본문 바로가기
C++/함수

[C++] 함수란 무엇인가

by bigpicture 2022. 8. 12.
반응형

함수란?

함수는 입력값들에 대해 어떤 작업을 수행하고 결과값을 반환하는 기능을 하는 것을 말합니다. 

<함수>
입력값 -> 처리 -> 출력값

함수는 반복되는 작업을 편하게 만들어 줄 수 있고 코드를 기능에 따라 여러 부분으로 나눌 수 있게 해줍니다. 

C++ 소스파일의 기본 구성도 메인함수입니다. main 함수 안에 모든 내용을 다 넣게 되면 코드가 너무 복잡해집니다. 따라서 main 함수 밖에 여러 함수를 정의하여 기능을 나눕니다. 이 함수들을 main 함수에서 적절히 호출하여 사용합니다. 

C++ 을 함수의 모음이라고 할 수도 있습니다. main 함수와 main 함수 안에서 호출된 다양한 함수들이 C++ 코드를 구성합니다. 

 

함수 선언해보기

C++에서 함수는 아래와 같이 선언합니다. 

반환형 함수이름(매개변수1,매개변수2,...)
{
    내용
}


함수에 익숙해지기 위해 간단한 함수를 하나 정의해 봅시다. 두개의 실수 값을 입력하면 평균을 구해주는 함수입니다. 

float mean(float value1,float value2)
{
    return (value1+value2)/2;
}


출력 형식은 float 이고, 출력 값은 return 뒤의 값이 출력됩니다. main 함수에서 mean 함수를 사용하는 형태는 아래와 같습니다. 

#include <iostream>

using namespace std;

float mean(float value1,float value2)
{
    return (value1+value2)/2;
    
}

int main()
{
    cout<<mean(3,6)<<endl;
    
    return 0;
}


main 함수보다 위에 정의해주고 mean(3,6)과 같은 형태로 사용하면 됩니다. 위 코드의 출력값은 4.5입니다. 

 

반환형과 매개변수 더 알아보기

위 함수에서 반환형은 float 입니다. 실수라는 뜻입니다. 따라서 반환 값이 실수형태로 반환됩니다. 매개변수는 두개의 실수입니다. 

재밌는 점은 반환형과 매개변수가 없는 함수도 있다는 것입니다. 따라서 함수는 아래와 같이 네가지 종류로 나눌 수 있습니다. 

- 반환형 있음, 매개변수 있음
- 반환형 있음, 매개변수 없음
- 반환형 없음, 매개변수 있음
- 반환형 없음, 매개변수 없음

반환형이 없다는것은 반환값이 없다는 것입니다. 매개변수는 있는데 반환형이 없다는 것은 입력되는 값은 있는데 출력되는 값이 없는 것입니다. 반환값이나 매개변수가 없는 경우에는 함수를 아래와 같이 선언합니다. 반환형과 매개변수 자리에 void를 입력하면 됩니다. 

void 함수이름(void)
{
    내용
}
반응형

댓글