>  기사  >  백엔드 개발  >  C 언어 사용자 정의 함수

C 언어 사용자 정의 함수

王林
王林원래의
2020-05-12 13:15:405921검색

C 언어 사용자 정의 함수

C 언어에서 매개변수 없는 함수의 정의

함수가 사용자가 전달한 데이터를 받지 못하는 경우 매개변수 없이 정의할 수 있습니다. 아래와 같이

dataType  functionName(){
    //body
}

dataType은 반환 값 유형이며 int, float, char 등과 같은 C 언어의 모든 데이터 유형이 될 수 있습니다.

functionName은 식별자의 한 종류인 함수 이름입니다. 명명 규칙은 식별자와 동일합니다. 함수명 뒤의 괄호( )는 빠질 수 없습니다.

body는 함수 본문으로, 함수를 실행하는 데 필요한 코드이자 함수의 주요 부분입니다. 문이 하나만 있어도 함수 본문을 { }로 묶어야 합니다.

반환값이 있는 경우 함수 본문에 return 문을 사용하여 반환하세요. 반환되는 데이터 유형은 dataType과 동일해야 합니다.

예를 들어 1에서 100까지 더한 결과를 계산하는 함수를 정의합니다.

#include <stdio.h>

int sum(){
    int i, sum=0;
    for(i=1; i<=100; i++){
        sum+=i;
    }
    return sum;
}

int main(){
    int a = sum();
    printf("The sum is %d\n", a);
    return 0;
}

실행 결과:

The sum is 5050

Function은 중첩 정의일 수 없으며 main도 함수 정의이므로 sum은 main 외부에 배치되어야 합니다. 함수를 먼저 정의한 후 사용해야 하므로 sum이 main 앞에 위치해야 합니다.

참고: main은 함수 호출이 아니라 함수 정의입니다. 실행 파일이 메모리에 로드되면 시스템은 메인 함수에서 실행을 시작합니다. 즉, 시스템은 우리가 정의한 메인 함수를 호출합니다.

반환 값이 없는 함수

일부 함수는 값을 반환할 필요가 없거나 반환 값 유형이 불확실한 경우(드물게) void 로 표시할 수 있습니다. 예:

void hello(){
    printf ("Hello,world \n");
    //没有返回值就不需要 return 语句
}

void는 C 언어의 type 키워드는 "빈 유형" 또는 "유형 없음"을 의미하며, 이는 대부분의 경우 return 문이 없음을 의미합니다.

C 언어의 매개변수화된 함수 정의

함수가 사용자가 전달한 데이터를 받아야 하는 경우 정의할 때 매개변수를 가져와야 합니다. 아래와 같이

dataType  functionName( dataType1 param1, dataType2 param2 ... ){
    //body
}

dataType1 param1, dataType2 param2 ...는 매개변수 목록입니다. 함수에는 매개변수가 하나만 있을 수도 있고 로 구분된 여러 매개변수가 있을 수도 있습니다. 매개변수는 본질적으로 변수이므로 정의할 때 유형과 이름을 지정해야 합니다. 매개변수 없는 함수의 정의와 비교하여 매개변수화된 함수의 정의에는 매개변수 목록이 하나만 더 있습니다.

데이터는 처리를 위해 매개변수를 통해 함수 내부로 전달됩니다. 처리가 완료된 후 반환 값이 함수 외부에 알려집니다.

n에 m을 더한 결과 계산:

#include <stdio.h>

int sum(int m, int n){
    int i, sum=0;
    for(i=m; i<=n; i++){
        sum+=i;
    }
    return sum;
}

int main(){
    int begin = 5, end = 86;
    int result = sum(begin, end);
    printf("The sum from %d to %d is %d\n", begin, end, result);
    return 0;
}

실행 결과:

The sum from 5 to 86 is 3731

sum()이 정의되면 매개변수 m과 n의 값을 알 수 없습니다. ​의 시작과 끝은 각각 m과 n에 전달됩니다. 이는 변수에 값을 할당하는 것과 동일한 프로세스입니다.

m = begin;
n = end;

권장 튜토리얼: c 언어 튜토리얼

위 내용은 C 언어 사용자 정의 함수의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.