더북(TheBook)

8.7 프로그램 종료 및 어서션

지금까지는 프로그램을 종료하는 방법 중 가장 간단한 방식인 main에서 정상적으로 리턴하는 방식만 사용했다.

TAKEAWAY 8.24 프로그램을 정상적으로 종료하려면 main에서 return을 사용해야 한다.

main에서 exit 함수를 사용하는 것은 큰 의미가 없다. 간단히 return을 사용하는 것과 차이가 없기 때문이다.

TAKEAWAY 8.25 정상적인 제어 흐름을 종료시킬 수 있는 함수에서는 exit를 사용한다.

C 라이브러리에는 프로그램을 종료시키는 함수가 다음과 같이 세 가지 더 있는데, 아래로 갈수록 심각한 상황을 의미한다.

_Noreturn void quick_exit(int status);
_Noreturn void _Exit(int status);
_Noreturn void abort(void);

main에서 return을 사용하거나 exit를 호출하면 프로그램 실행의 성공 여부를 리턴 값으로 표현할 수 있다. 하지만 특별한 이유가 없거나 다른 함수의 기능을 제대로 파악하지 않은 상태에서는 이런 식으로 처리하지 않는 것이 좋다. 다시 한 번 강조하지만 이렇게 하지 않기 바란다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.