|
|
Program termination | ||||||||||||||||||||||||||||||||||||
|
| |||||||||||||||||||||||||||||||||||
Unreachable control flow | ||||||||||||||||||||||||||||||||||||
(C++23) | ||||||||||||||||||||||||||||||||||||
Communicating with the environment | ||||||||||||||||||||||||||||||||||||
Signals | ||||||||||||||||||||||||||||||||||||
Signal types | ||||||||||||||||||||||||||||||||||||
Non-local jumps | ||||||||||||||||||||||||||||||||||||
Types | ||||||||||||||||||||||||||||||||||||
Defined in header <cstdlib> | ||
#define EXIT_SUCCESS /*implementation defined*/ | ||
#define EXIT_FAILURE /*implementation defined*/ | ||
TheEXIT_SUCCESS
andEXIT_FAILURE
macros expand into integral constant expressions that can be used as arguments to thestd::exit function (and, therefore, as the values to return from themain function), and indicate program execution status.
A freestanding implementation is required to provide | (since C++23) |
Constant | Description |
EXIT_SUCCESS | successful execution of a program |
EXIT_FAILURE | unsuccessful execution of a program |
BothEXIT_SUCCESS
and the value zero indicate successful program execution status (seestd::exit), although it is not required thatEXIT_SUCCESS
equals zero.
AlthoughEXIT_SUCCESS
andEXIT_FAILURE
are required to be freestanding since C++23, they are not required to be available in a freestanding C implementation.
Possible output:
The quick brown fox jumps over the lazy cat
C documentation forEXIT_SUCCESS,EXIT_FAILURE |