Spec-Zone.ru › C

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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API