Namespaces
Variants
Actions

EXIT_SUCCESS, EXIT_FAILURE

From cppreference.com
< cpp‎ | utility‎ | program
 
 
Utilities library
General utilities
Relational operators (deprecated in C++20)
(C++20)(C++20)(C++20)  
(C++20)
(C++20)
(C++14)
(C++11)
(C++11)
(C++23)
(C++11)
(C++17)
Common vocabulary types
(C++11)
(C++17)
(C++17)
(C++17)
(C++11)
(C++17)
(C++23)


 
 
Defined in header <cstdlib>
#define EXIT_SUCCESS /*implementation defined*/
#define EXIT_FAILURE /*implementation defined*/

The EXIT_SUCCESS and EXIT_FAILURE macros expand into integral constant expressions that can be used as arguments to the std::exit function (and, therefore, as the values to return from the main function), and indicate program execution status.

A freestanding implementation is required to provide EXIT_SUCCESS and EXIT_FAILURE.

(since C++23)
Constant Description
EXIT_SUCCESS successful execution of a program
EXIT_FAILURE unsuccessful execution of a program

[edit] Notes

Both EXIT_SUCCESS and the value zero indicate successful program execution status (see std::exit ), although it is not required that EXIT_SUCCESS equals zero.

Although EXIT_SUCCESS and EXIT_FAILURE are required to be freestanding since C++23, they are not required to be available in a freestanding C implementation.

[edit] Example

Run this code
#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;
}

Possible output:

The quick brown fox jumps over the lazy cat

[edit] See also

C documentation for EXIT_SUCCESS, EXIT_FAILURE
Retrieved from "https://en.cppreference.com/mwiki/index.php?title=cpp/utility/program/EXIT_status&oldid=178763"

AltStyle によって変換されたページ (->オリジナル) /