산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Industrial programming >> C 언어

C - 기능

함수는 작업을 함께 수행하는 명령문의 그룹입니다. 모든 C 프로그램에는 main()이라는 하나 이상의 함수가 있습니다. , 그리고 가장 사소한 모든 프로그램은 추가 기능을 정의할 수 있습니다.

코드를 별도의 기능으로 나눌 수 있습니다. 코드를 여러 기능으로 나누는 방법은 사용자에게 달려 있지만 논리적으로 구분은 각 기능이 특정 작업을 수행하도록 하는 것입니다.

함수 선언 컴파일러에게 함수의 이름, 반환 유형 및 매개변수에 대해 알려줍니다. 함수 정의 함수의 실제 본문을 제공합니다.

C 표준 라이브러리는 프로그램이 호출할 수 있는 수많은 내장 함수를 제공합니다. 예를 들어, strcat() 두 문자열을 연결하려면 memcpy() 하나의 메모리 위치를 다른 위치로 복사하고 더 많은 기능을 사용할 수 있습니다.

함수는 메소드 또는 서브루틴 또는 프로시저 등으로도 지칭될 수 있습니다.

함수 정의

C 프로그래밍 언어에서 함수 정의의 일반적인 형태는 다음과 같습니다 -

return_type function_name( parameter list ) {
   body of the function
}

C 프로그래밍의 함수 정의는 함수 헤더로 구성됩니다. 및 함수 본문 . 다음은 함수의 모든 부분입니다 -

아래는 max()라는 함수의 소스 코드입니다. . 이 함수는 두 개의 매개변수 num1과 num2를 사용하고 두 -

사이의 최대값을 반환합니다.
/* function returning the max between two numbers */
int max(int num1, int num2) {

   /* local variable declaration */
   int result;
 
   if (num1 > num2)
      result = num1;
   else
      result = num2;
 
   return result; 
}

함수 선언

함수 선언 컴파일러에게 함수 이름과 함수 호출 방법을 알려줍니다. 함수의 실제 본문은 별도로 정의할 수 있습니다.

함수 선언에는 다음과 같은 부분이 있습니다. -

return_type function_name( parameter list );

위에서 정의한 max() 함수의 경우 함수 선언은 다음과 같습니다. -

int max(int num1, int num2);

매개변수 이름은 함수 선언에서 중요하지 않으며 해당 유형만 필요하므로 다음도 유효한 선언입니다. −

int max(int, int);

한 소스 파일에서 함수를 정의하고 다른 파일에서 해당 함수를 호출할 때 함수 선언이 필요합니다. 이 경우 함수를 호출하는 파일의 맨 위에 함수를 선언해야 합니다.

함수 호출

C 함수를 생성하는 동안 함수가 수행해야 하는 작업에 대한 정의를 제공합니다. 함수를 사용하려면 정의된 작업을 수행하기 위해 해당 함수를 호출해야 합니다.

프로그램이 함수를 호출하면 프로그램 제어가 호출된 함수로 전송됩니다. 호출된 함수는 정의된 작업을 수행하고 반환 문이 실행되거나 함수 종료 중괄호에 도달하면 프로그램 제어를 다시 메인 프로그램으로 반환합니다.

함수를 호출하려면 함수 이름과 함께 필요한 매개변수를 전달하기만 하면 되며, 함수가 값을 반환하면 반환된 값을 저장할 수 있습니다. 예를 들어 -

라이브 데모
#include <stdio.h>
 
/* function declaration */
int max(int num1, int num2);
 
int main () {

   /* local variable definition */
   int a = 100;
   int b = 200;
   int ret;
 
   /* calling a function to get max value */
   ret = max(a, b);
 
   printf( "Max value is : %d\n", ret );
 
   return 0;
}
 
/* function returning the max between two numbers */
int max(int num1, int num2) {

   /* local variable declaration */
   int result;
 
   if (num1 > num2)
      result = num1;
   else
      result = num2;
 
   return result; 
}

우리는 main()과 함께 max()를 유지하고 소스 코드를 컴파일했습니다. 최종 실행 파일을 실행하는 동안 다음과 같은 결과가 생성됩니다. -

Max value is : 200

함수 인수

함수가 인수를 사용하려면 인수 값을 허용하는 변수를 선언해야 합니다. 이러한 변수를 형식 매개변수라고 합니다. 기능.

형식 매개변수는 함수 내부의 다른 지역 변수처럼 작동하며 함수에 들어갈 때 생성되고 종료할 때 소멸됩니다.

함수를 호출하는 동안 인수를 함수에 전달할 수 있는 두 가지 방법이 있습니다 -

시니어 번호 통화 유형 및 설명
1 값에 의한 호출

이 메서드는 인수의 실제 값을 함수의 형식 매개변수에 복사합니다. 이 경우 함수 내부의 매개변수를 변경해도 인수에는 영향을 미치지 않습니다.

2 참조에 의한 호출

이 메서드는 인수의 주소를 형식 매개변수에 복사합니다. 함수 내에서 주소는 호출에 사용된 실제 인수에 액세스하는 데 사용됩니다. 이는 매개변수에 대한 변경 사항이 인수에 영향을 미친다는 것을 의미합니다.

기본적으로 C는 값에 의한 호출을 사용합니다. 인수를 전달합니다. 일반적으로 함수 내의 코드가 함수를 호출하는 데 사용되는 인수를 변경할 수 없음을 의미합니다.


C 언어

  1. C 프로그래밍의 사용자 정의 함수 유형
  2. C의 함수에 배열 전달
  3. C 표준 라이브러리 함수
  4. 예제가 있는 Python Lambda 함수
  5. Verilog 기능
  6. C - 비트 필드
  7. C - 파일 I/O
  8. C - 변수 인수
  9. C++의 다형성
  10. MATLAB - 함수