함수란?
- function이라고 하며 뜻은 기능을 뜻합니다.
- 기능을 구현하는 부분을 따로 분리하여 구현한 것으로, 구조화 프로그램의 중요한 개념입니다.
* 구조화: 프로그램을 기능별로 함수화 하는것 (쉽게말해 프로그램을 기능별로 쪼개는것)
* 여기서 구조화된 데이터를 처리할때 struct를 사용하는데 이를 구조체라 하며 구조체에 대해서는 추후 다시 포스팅 하도록 하겠습니다.
함수의 기본 형태
함수는 사진과 같이 반환자료형, 함수이름, 인수목록으로 나뉩니다.
- 반환자료형: 메인함수의 사용에서 return 0;부분을 보면 0을 반환한다는 뜻인데 정수형으로 반환하여 int를 사용했습니다.
- 함수이름: main함수의 경우 프로그램 실행시 가장 먼저 실행되는 함수입니다.
꼭 필요한 함수이며, 변경할 수 없지만 사용자 정의 함수의 경우에는 일반적인 명명규칙에 따라 사용자 지정이 가능합니다.
- 인수목록: main함수에는 보통 아무것도 쓰지 않습니다. 하지만 괄호안에 void가 생략된 형태입니다.
.cpp파일로 저장하고 컴파일 해보면 warning이 뜨는 것을 확인하실 수 있습니다.
함수의 기본형태 예시
1 2 3 4 5 6 | void func (void) { /* 문장 */ } | cs |
반환값X, 매개변수X
1 2 3 4 5 6 | void func (int value) { /* 문장 */ } | cs |
1 2 3 4 5 6 | void func (int value1, int value2) { /* 문장 */ } | cs |
반환값O, 매개변수O
반환값이 double형이기 때문에 반드시 return도 double형이여야 합니다.
반환값, 매개변수란?
반환값
- return이라고 하며 현재 있는 함수에서 빠져나가 함수를 호출했던 곳으로 되돌아가라는 뜻입니다.
return 0; 은 0이라는 값을 반환하라는 의미가 되며,
return 1; 은 1이라는 값을 반환하라는 의미입니다.
매개변수
- parameter라고 하며 하나의 변수라고 정의할 수 있음 (예를들어 사람의 무게, 키등의 모든 수치)
함수의 종류
- 함수의 종류에는 사용자 정의함수, 라이브러리 함수가 있습니다.
사용자 정의 함수
- 사용자가 구현하고 싶은 기능을 구현하는것
라이브러리 함수
- 우리가 흔히 써오던 printf(), scanf()와 같은 함수이며, 두 함수는 stdio.h파일 안에 정의되어있습니다.
즉 우리는 printf()라는 함수를 호출하여 손쉽게 구절하나를 통해 원하는 출력을 할 수 있다고 생각하면 되겠습니다.
한줄요약.
사용자정의 함수: 사용자가 하고싶은대로 기능을 구현해놓은 함수
라이브러리 함수: 이미 구현해놓은 함수를 사용하는것
'프로그래밍 > C++' 카테고리의 다른 글
[C++] 입력한 수만큼 뒤집어진 반삼각형 별찍기 (for문 반복문 예제) (2) | 2017.03.01 |
---|---|
[C++] 입력한 수만큼 반삼각형 별찍기 (for문 반복문 예제) (2) | 2017.03.01 |