Содержание | Глава 18

Функция exit

#include <stdlib.h>
void exit(int exit_code);

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

В вызывающий процесс (обычно это операционная система) передается значение параметра exit_code, если в данной среде предусмотрена поддержка возможных значений. По соглашению, если параметр exit_code равен нулю или значению EXIT_SUCCESS, предполагается нормальное завершение программы. Ненулевое значение, или значение EXIT_FAILURE, используется для индикации ошибки, определенной конкретной реализацией.

Пример

Эта программа обработки списка рассылки позволяет пользователю сделать выбор из меню. Программа завершается, если введена буква Q.

int menu(void)
{
  char choice;

  do {
    printf("Ввод имени (E)\n");
    printf("Удаление имени (D)\n");
    printf("Печать (P)\n");
    printf("Выход (Q)\n");
    choice = getchar();
  } while(!strchr("EDPQ", toupper(choice)));

  if(choice=='Q') exit(0);

  return choice;
}

Зависимые функции

atexit() abort() _Exit()
Содержание | Глава 18