Page 16 - Warming-Up C Programming 도서미리보기
P. 16
038 Warming-up C Programming
int main(void) int main(void)
{ {
... 정상 종료 if (...) // 메모리 할당 실패
return 1;
return 0;
} ...
} 비정상 종료
[그림 2-7]? main 함수의 종료 코드
리턴형이 void가 아닌 함수에는 반드시 return문이 필요하다. 그런데 예외적으로 main
함수에서는 return문을 생략할 수 있다. main 함수에서 return문을 생략하면 프로그램 종
료 시 0이 리턴된다. 간단한 코드 작성을 위해 이 책의 예제에서는 main 함수의 return 0;
은 생략하기로 한다.
Further Study
main 함수만 진입점 함수일까?
main 함수는 콘솔 프로그램의 진입점 함수이다. Windows 데스크톱 응용 프로그램은 main 함수 대신 Win-
Main 함수를 진입점 함수로 사용한다.
리턴형이 void인 main 함수
main 함수의 리턴형으로 void형을 지정하기도 하는데, 이것은 C 표준이 아니므로 피하는 것이 좋다. main 함
수는 int main(void)으로 정의해야 한다.
표준 C의 main 함수 표준 C를 따르지 않음
void main(void) { ... }
int main(void) { ... }
int main() { ... }
void를 생략
한 경우
C의 문장과 들여쓰기
C에서는 한 문장을 여러 줄에 걸쳐서 작성할 수도 있고, 여러 문장을 한 줄에 작성할 수도 있다. 보통은 알아보
기 쉽도록 한 줄에 한 문장씩 작성하는 것이 좋다. { }로 묶인 문장들을 블록(block)이라고 하며, 블록 안의 문
장들은 알아보기 쉽게 들여쓰기 하는 것이 좋다.
들여쓰기를 한 경우 들여쓰기를 하지 않은 경우
int main(void) int main(void) {
{
{와 }는 새로운 printf("Not Good\n"
줄에 써준다. printf("Good\n");
return 0; ); 소스코드를
} return 0; } 알아보기 어렵다.
블록 안의 문장들은
한 줄에 한 문장씩
들여쓰기한다.