Программирование на C и C++

Онлайн справочник программиста на C и C++

EXIT()

Функция exit(), находящаяся в стандартной библиотеке, вызывает немедленное окончание работы программы. Поскольку функция exit() останавливает выполнение программы и форсирует возврат в операционную систему, она используется для управления устройствами, и ее использует подавляющее большинство программ. Функция exit() имеет следующий вид:

void exit (int статус);

Она использует заголовочный файл stdlib.h. Значение статуса возвращается в операционную систему.

Для индикации корректности завершения работы exit() традиционно вызывается с аргументом 0.

Другие аргументы используются для индикации различного рода ошибок. Можно также использовать предопределенные макросы EXIT_SUCCESS и EXIT_FAILURE в качестве значений для статуса.

exit() используется, когда условия выполнения программы неудовлетворительны. Например компьютерная игра может требовать специальный графический адаптер. Функция main() данной игры может выглядеть следующим образом:

#include <stdlib.h>
int main(void)
{
if (!special_adaptor()) exit(1);
play ();
return 0;
}

где special_adaptor() - это определенная пользователем функция, возвращающая истину, если необходимый адаптер присутствует. Если карта в системе отсутствует, то данная функция возвращает ложь и программа завершает работу.

В другом примере exit() используется для выхода из программы и возврата в операционную систему

void menu(void)
{
char ch;
printf ("1.    Check Spelling\n");
printf ("2.    Correct Spelling, Errors\n");
printf("3.    Display Spelling Errors\n");
printf("4.    Quit\n");
printf("    Enter your choice: ");
do {
ch = getchar(); /* чтение клавиатуры */
switch(ch)
{
case '1':
check_spelling();
break;
case '2':
correct_errors();
break;
case '3':
display_errors ();
break;
case '4':
exit(0); /* возврат в ОС*/
}
}
while(ch!='1' && ch!='2' && ch!='3');
}