Computer >> 컴퓨터 >  >> 프로그래밍 >> C 프로그래밍

C/C++에서 main() 함수의 반환값은 무엇이어야 할까?

main() 함수의 반환값은 프로그램이 어떤 상태로 종료되었는지를 운영체제에 알려주는 중요한 신호입니다. 프로그램이 정상적으로 실행을 마치고 종료되었을 때는 0을 반환하는 것이 표준입니다. 반대로 코드에 오류나 예외가 발생하여 비정상적으로 종료된 경우에는 0이 아닌 값(일반적으로 1 또는 음수)을 반환하게 됩니다.

C++ 언어에서는 main() 함수 마지막에 return 문을 명시하지 않아도 됩니다. 이 경우 컴파일러가 자동으로 0을 반환하도록 처리하기 때문에, 프로그래머가 따로 작성하지 않아도 정상 종료로 간주됩니다.

main() 함수의 기본 문법

C 언어에서 main() 함수의 일반적인 문법은 다음과 같습니다.

int main() {
    ....
    return 0;
}

예제 코드

다음은 C 언어에서 main() 함수를 활용한 예제입니다. 문자형과 정수형, 그리고 정수형과 실수형 사이의 암시적 형 변환(implicit conversion) 과정을 보여줍니다.

#include <stdio.h>
int main() {
    int a = 10;
    char b = 'S';
    float c = 2.88;
    a = a+b;
    printf("문자에서 정수로의 암시적 형 변환 : %d\n",a);
    c = c+a;
    printf("정수에서 실수로의 암시적 형 변환 : %f\n",c);
    return 0;
}

실행 결과

문자에서 정수로의 암시적 형 변환 : 93
정수에서 실수로의 암시적 형 변환 : 95.879997

코드 분석

위 프로그램의 main 함수 안에는 실제 연산 로직이 포함되어 있습니다. 세 개의 변수 a, b, c가 선언되어 있으며, 변수 a에는 a와 b를 더한 값이 저장되고, 이후 변수 c에는 c와 a를 더한 값이 저장됩니다. 모든 연산이 끝난 후 main 함수는 return 0; 문을 통해 0을 반환하며 프로그램이 오류 없이 정상적으로 종료되었음을 운영체제에 알립니다.

a = a+b;
printf("문자에서 정수로의 암시적 형 변환 : %d\n",a);
c = c+a;
printf("정수에서 실수로의 암시적 형 변환 : %f\n",c);
return 0;