Page 15 - Warming-Up C Programming 도서미리보기
P. 15
CHAPTER 2? C 프로그램의 기본 037
호출 int main(void) 진입점 함수
{
운영
체제 printf("First C Program\n");
리턴 return 0;
} 프로그램의
종료 코드
[그림 2-5]? 진입점 함수
C 프로그램에는 main 함수가 반드시 필요하다. 운영체제가 main 함수를 호출하기로 약
속되어 있기 때문이다. C 프로그램에 main 함수가 없으면 링크 에러가 발생한다. C에서는
프로그램에서 사용되는 이름에 대하여 대소문자를 구분해서 사용한다. 따라서 main 함수
의 이름으로 Main이나 MAIN을 사용하는 것은 잘못이다. 또한 C 프로그램에 main 함수
가 아예 없거나, 여러 개의 main 함수를 만드는 것도 잘못이다.
잘못된 이름 int main(void)
{
int Main(void) }
{ int main(void)
} {
} main을 여러 번
만들 수 없다.
[그림 2-6]? 잘못된 main 함수
main 함수의 { } 안에는 프로그램이 수행할 내용을 적어준다. main 함수 안의 문장들을
수행하다가 함수의 끝을 만나거나 return문을 만나면 리턴한다. 이때, int형의 값을 리턴하
는데, 이 값을 프로그램의 종료 코드(exit code)라고 한다. main 함수가 리턴하면 실행의
흐름이 운영체제로 되돌아가면서 프로그램이 종료된다. 즉, main 함수의 리턴값은 운영체
제로 전달되며, 프로그램의 종료 상태를 알려준다.
프로그램의 종료 코드가 0이면 정상 종료를 의미한다. 정상 종료는 프로그램이 끝까지
잘 수행되고 끝났다는 의미이다. 파일을 열 수 없거나 메모리를 할당할 수 없으면 프로그
램이 제대로 수행되지 못하고 종료될 수도 있다. 이때는 종료 코드로 0이 아닌 값을 리턴
한다.