Namespaces
Variants

EXIT_SUCCESS, EXIT_FAILURE

From cppreference.net
Utilities library
Определено в заголовочном файле <cstdlib>
#define EXIT_SUCCESS /*implementation defined*/
#define EXIT_FAILURE /*implementation defined*/

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

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

(since 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