Синтаксис:
#include < unistd.h >
void _exit (int code);
Аргументы:
int code – определяет статус завершения работы, 0 (EXIT_SUCCESS)– нормальное завершение работы, отличное от нуля значение (EXIT_FAILURE) – завершение работы с индикацией ошибки.
Возвращаемое значение:
Ничего не возвращает.
Описание:
Функция _exit () аналогична функции _Exit (), описанной в библиотеке stdlib.h
Пример:
В примере, организуется бесконечный цикл, в котором анализируются символы, вводимые в стандартный поток ввода-вывода. Как только программа встречает символ ‘e’, она завершает работу, вызывая функцию _exit (). В качестве параметра функции указывается статус EXIT_SUCCESS, так как завершение работы штатное. При этом функция завершения работы f_MyEnd, зарегистрированная с помощью функции atexit, вызвана не будет.
#include < stdio.h > //Для puts и getchar
#include < stdlib.h > //Для atexit
#include < unistd.h > //Для _exit
//Декларация функций, которая будет вызвана при
//при завершении работы с помощью функции exit ()
void f_MyEnd (void);
int main (void)
{ int Pwork=0;
int MyChar=0;
//Регистрация функции, которая будет вызвана при
//нормальном завершении работы
Pwork = atexit (f_MyEnd);
//Проверка регистрации функции MyEnd_s
if (Pwork != 0) { puts (“Ошибка регистрации функции f_MyEnd ”); }
//Бесконечный цикл
while (1)
{ //Считывание символа из стандартного потока ввода-вывода
MyChar = getchar ();
//Если считан симовл ‘e’ завершаем работу программы
if (MyChar == ‘e’)
_exit (EXIT_SUCCESS); //Завершение работы программы
}
return 0;
}
Функция, вызываемая при завершении работы
void f_MyEnd (void)
{ //Вывод сообщения о завершении работы
puts (“Работа завершена”);
}
|
Результат:
После ввода символа 'e' работа программы завершилась.
Смотри так же:
_Exit,
_exit,
abort,
atexit,
exit
|