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