Namespaces
Variants

EXIT_SUCCESS, EXIT_FAILURE

С сайта ru.cppreference.net
 
 
Библиотека утилит
Поддержка языка
Поддержка типов (основные типы, RTTI)
Макросы проверки возможностей библиотеки (C++20)
Утилиты программ
Функции с переменным числом аргументов
Поддержка корутин (C++20)
Поддержка контрактов (C++26)
Трёхстороннее сравнение
(C++20)
(C++20)(C++20)(C++20)    
(C++20)(C++20)(C++20)

Общие утилиты
Операторы отношений (устарело в C++20)
 
 
Определено в заголовке <cstdlib>
#define EXIT_SUCCESS /* implementation defined */
#define EXIT_FAILURE /* implementation defined */

Макросы EXIT_SUCCESS и EXIT_FAILURE раскрываются в целочисленные константные выражения, которые могут использоваться в качестве аргументов для функции std::exit (и, следовательно, в качестве значений, возвращаемых из функции main), и указывают на статус выполнения программы.

Автономная реализация обязана предоставлять EXIT_SUCCESS и EXIT_FAILURE.

(начиная с C++23)
Константа Описание
EXIT_SUCCESS успешное выполнение программы
EXIT_FAILURE неуспешное выполнение программы

Примечания

И EXIT_SUCCESS , и значение ноль указывают на статус успешного завершения программы (см. std::exit ), однако не требуется, чтобы EXIT_SUCCESS равнялся нулю.

Хотя EXIT_SUCCESS и EXIT_FAILURE должны быть доступны в автономной реализации начиная с C++23, они не обязаны быть доступными в автономной реализации на языке C.

Пример

#include <cstdlib>
#include <iostream>
int main(int argc, char* argv[])
{
    if (argc <= 1)
    {
        std::cout << "At least one command-line argument required\n";
        return EXIT_FAILURE;
    }
    std::cout << argv[1] << '\n';
    return EXIT_SUCCESS;
}

Возможный вывод:

The quick brown fox jumps over the lazy cat

Смотрите также

Документация по C для EXIT_SUCCESS , EXIT_FAILURE