EXIT_SUCCESS, EXIT_FAILURE
Определено в заголовочном файле <stdlib.h> | ||
|---|---|---|
#define EXIT_SUCCESS /*implementation defined*/ | ||
#define EXIT_FAILURE /*implementation defined*/ |
Макросы EXIT_SUCCESS и EXIT_FAILURE расширяются до целочисленных выражений, которые могут быть использованы в качестве аргументов функции exit (и, следовательно, как значения возврата из функции main), и указывают на статус выполнения программы.
| Константа | Объяснение |
|---|---|
EXIT_SUCCESS | успешное выполнение программы |
EXIT_FAILURE | неуспешное выполнение программы |
Примечания
Как EXIT_SUCCESS, так и значение ноль указывают на успешный статус выполнения программы (см. exit), хотя не требуется, чтобы EXIT_SUCCESS равнялось нулю.
Пример
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
FILE *fp = fopen("data.txt","r");
if (fp == NULL)
{
fprintf(stderr, "fopen() failed in file %s at line # %d", __FILE__,__LINE__);
exit(EXIT_FAILURE);
}
/* Normal processing continues here. */
fclose(fp);
printf("Normal Return\n");
return EXIT_SUCCESS;
}Вывод:
fopen() failed in file main.cpp at line # 9
Ссылки
- Стандарт C17 (ISO/IEC 9899:2018):
- 7.22/3 Общие служебные функции <stdlib.h> (с. 248)
- Стандарт C11 (ISO/IEC 9899:2011):
- 7.22/3 Общие служебные функции <stdlib.h> (с. 340)
- Стандарт C99 (ISO/IEC 9899:1999):
- 7.20/3 Общие служебные функции <stdlib.h> (с. 306)
- Стандарт C89/C90 (ISO/IEC 9899:1990):
- 4.10 Общие служебные функции <stdlib.h>
См. также
Документация C++ для EXIT_SUCCESS, EXIT_FAILURE |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/c/program/EXIT_status