_Exit
|
Определено в заголовочном файле
<stdlib.h>
|
||
|
void
_Exit
(
int
exit_code
)
;
|
(начиная с C99)
(до C11) |
|
|
_Noreturn
void
_Exit
(
int
exit_code
)
;
|
(начиная с C11)
(до C23) |
|
|
[
[
noreturn
]
]
void
_Exit
(
int
exit_code
)
;
|
(начиная с C23) | |
Вызывает нормальное завершение программы без полной очистки ресурсов.
Функции, переданные в at_quick_exit() или atexit() не вызываются. Будет ли выполнена очистка буферов открытых потоков с невыведенными данными, закрыты ли открытые потоки или удалены временные файлы - определяется реализацией.
Если
exit_code
равен
0
или
EXIT_SUCCESS
, в среду выполнения возвращается определенный реализацией статус, указывающий на успешное завершение. Если
exit_code
равен
EXIT_FAILURE
, возвращается определенный реализацией статус, указывающий на
неуспешное
завершение. В остальных случаях возвращается определенное реализацией значение статуса.
Содержание |
Параметры
| exit_code | - | статус завершения программы |
Возвращаемое значение
(нет)
Пример
#include <stdlib.h> #include <stdio.h> /* _Exit does not call functions registered with atexit. */ void f1(void) { puts("pushed first"); } void f2(void) { puts("pushed second"); } int main(void) { printf("Enter main()\n"); atexit(f1); atexit(f2); fflush(stdout); /* _Exit may not flush unwritten buffered data */ _Exit(0); }
Вывод:
Enter main()
Ссылки
- Стандарт C17 (ISO/IEC 9899:2018):
-
- 7.22.4.5 Функция _Exit (стр: 256)
- Стандарт C11 (ISO/IEC 9899:2011):
-
- 7.22.4.5 Функция _Exit (стр: 352)
- Стандарт C99 (ISO/IEC 9899:1999):
-
- 7.20.4.4 Функция _Exit (стр: 316)
Смотрите также
|
вызывает аварийное завершение программы (без очистки)
(функция) |
|
|
вызывает нормальное завершение программы с очисткой
(функция) |
|
|
C++ documentation
для
_Exit
|
|