exit() 함수는 실행 중인 프로그램을 즉시 종료할 때 사용하는 C 언어의 표준 라이브러리 함수입니다. 이 함수가 호출되면 현재 실행 중인 작업과 관계없이 프로그램 전체가 즉시 종료되며, 제어권은 운영체제로 넘어갑니다.
exit() 함수의 기본 문법
void exit(int code);
code 매개변수에는 프로그램의 종료 상태를 나타내는 정수 값을 전달합니다. 이 값은 운영체제를 통해 호출 프로세스(부모 프로세스)에 반환됩니다. 일반적으로 다음과 같은 규칙을 따릅니다.
- 0: 프로그램이 정상적으로 종료되었음을 의미합니다.
- 0이 아닌 값: 비정상 종료 또는 오류가 발생했음을 의미합니다.
사용 시 주의 사항
exit() 함수를 사용하려면 헤더 파일 <stdlib.h>를 반드시 포함해야 합니다. 또한 exit()는 단순히 반복문 하나만 탈출하는 것이 아니라 프로그램 전체를 종료한다는 점에 유의해야 합니다. 만약 반복문만 빠져나가고 싶다면 break 문을 사용하는 것이 더 적절합니다.
예제 코드
다음은 exit() 함수를 활용한 C 프로그램 예제입니다. 사용자가 메뉴를 입력하면 해당 결과를 출력하고, 'E'를 입력하면 프로그램이 종료됩니다.
#include <stdio.h>
#include <stdlib.h>
int main() {
char ch;
printf("B: Breakfast\n");
printf("L: Lunch\n");
printf("D: Dinner\n");
printf("E: Exit\n");
printf("메뉴를 선택하세요: ");
do {
ch = getchar();
switch (ch) {
case 'B':
printf("아침 식사 시간입니다.\n");
break;
case 'L':
printf("점심 식사 시간입니다.\n");
break;
case 'D':
printf("저녁 식사 시간입니다.\n");
break;
case 'E':
exit(0); /* 운영체제로 복귀 */
}
} while (ch != 'B' && ch != 'L' && ch != 'D');
return 0;
}실행 결과
위 프로그램을 실행하고 'D'를 입력하면 다음과 같은 결과가 출력됩니다.
B: Breakfast L: Lunch D: Dinner E: Exit 메뉴를 선택하세요:D 저녁 식사 시간입니다.