본문 바로가기

C

[C언어] 함수(function) | 선언과 정의, 반환값, 파라미터(매개변수)

반응형

 

 

 

토글

 

 

 

1. 함수의 개념과 종류

C 언어에서는 함수를 선언과 정의로 구성한다.

 // 선언
   void p(int num);

   // 정의
   void p(int num)
   {
       printf("num은 %d입니다.\n", num);
   }



   함수에는 반환값이 없는 함수, 반환값이 있는 함수, 파라미터(매개변수)가 있는 함수, 그리고 파라미터가 있고 반환값도 있는 함수 네 가지 종류가 있다.

 

 

반환값

- 함수가 작업을 완료하고 결과를 반환하는 값으로, 함수를 호출한 곳으로 값을 전달한다.

- 반환값을 가지는 함수는 함수 이름 앞에 반환할 자료형을 명시해야 한다.

파라미터(매개변수)

- 함수가 호출될 때 함수로 전달되는 값들을 의미한다.

- 함수는 이러한 파라미터를 이용하여 입력을 처리하고 결과를 반환한다.

- 함수를 정의할 때 파라미터의 개수와 타입을 지정해야 한다.

 

 

 



2. 반환값이 없는 함수

   반환값이 없는 함수는 void 타입으로 선언하며, 반환값이 없기 때문에 함수 내부에서 결과를 반환하지 않는다. 
   
 

 void function_without_return()
   {
       printf("반환값이 없는 함수입니다.\n");
   }

 

- 반환값이 없는 함수는 void 타입으로 선언되며, 함수 내부에서는 return 문을 사용하지 않는다.

- 이러한 함수는 작업을 수행하고 결과를 반환하지 않는 경우에 주로 사용된다.

- 예를 들어, 메시지를 출력하는 함수나 파일을 읽어오는 함수 등이 있다.

 

 

 



3. 반환값이 있는 함수

   반환값이 있는 함수는 정수형 등의 자료형으로 선언하며, 함수 내부에서 계산된 결과를 반환한다.
   
 

  int function_with_return()
   {
       printf("반환값이 있는 함수입니다.\n");
       return 10;
   }


- 반환값이 있는 함수는 특정 작업을 수행한 결과를 반환한다.

- 함수 내부에서 return 문을 사용하여 결과를 반환한다.

- 반환할 값의 타입은 함수의 정의 부분에서 지정해야 한다.

 

 

 


 

4. 파라미터(매개변수)가 있는 함수

   파라미터가 있는 함수는 함수를 호출할 때 전달되는 인자 값을 받아와서 사용하는 함수이다.

반응형
 void function_with_params(int num1, int num2, int num3)
   {
       printf("매개변수가 있는 함수이며, 매개변수는 %d, %d, %d 입니다.\n", num1, num2, num3);
   }

 

- 파라미터가 있는 함수는 함수 호출 시 인자를 받아와서 해당 인자를 함수 내부에서 처리하는 역할을 한다.

- 파라미터를 이용하여 함수에 필요한 데이터를 전달할 수 있다.

- 함수 정의에서 파라미터의 이름과 타입을 명시해야 한다.

 

 

 


 

5. 파라미터(매개변수)가 있고, 반환값도 있는 함수

   파라미터가 있고 반환값도 있는 함수는 두 가지 요소를 모두 갖고 있는 함수이다. 


  int apple(int apple1, int apple2)
   {
       return apple1 - apple2;
   }

 

파라미터와 반환값을 모두 가지는 함수는 수행결과를 반환하면서, 해당 작업에 필요한 데이터를 파라미터로 받아올 수 있다. 

 

 

 



6. 계산기 함수

덧셈, 뺄셈, 곱셈, 나눗셈 함수를 각각 구현하고, 이를 활용하여 계산을 수행하는 함수이다.

 

  // 계산기 함수
   int add(int num1, int num2)
   {
       return num1 + num2;
   }

   int sub(int num1, int num2)
   {
       return num1 - num2;
   }

   int mul(int num1, int num2)
   {
       return num1 * num2;
   }

   int div(int num1, int num2)
   {
       return num1 / num2;
   }



6-1. 계산기 함수 호출과 결과 확인

- 함수호출

int main_function(void)
   {
       int num = 2;
       num = add(num, 3);
       p(num);

       num = sub(num, 1);
       p(num);

       num = mul(num, 3);
       p(num);

       num = div(num, 6);
       p(num);

       return 0;
   }



 - 결과 확인

 num은 5입니다.
   num은 4입니다.
   num은 12입니다.
   num은 2입니다.



 

 

 

반응형