Program support utilities
From cppreference.com
< c
Program termination
The following functions manage program termination and resources cleanup.
Defined in header
<stdlib.h> | |
causes abnormal program termination (without cleaning up) (function) | |
causes normal program termination with cleaning up (function) | |
(C11) |
causes normal program termination without completely cleaning up (function) |
(C99) |
causes normal program termination without cleaning up (function) |
registers a function to be called on exit() invocation (function) | |
(C11) |
registers a function to be called on quick_exit invocation (function) |
indicates program execution execution status (macro constant) |
Unreachable control flow
Defined in header
<stddef.h> | |
(C23) |
marks unreachable point of execution (function macro) |
Communicating with the environment
Defined in header
<stdlib.h> | |
calls the host environment's command processor (function) | |
(C11) |
access to the list of environment variables (function) |
Memory alignment query
Defined in header
<stdlib.h> | |
(C23) |
queries the alignment of a pointer value (function) |
Signals
Several functions and macro constants for signal management are provided.
Defined in header
<signal.h> | |
sets a signal handler for particular signal (function) | |
runs the signal handler for particular signal (function) | |
the integer type that can be accessed as an atomic entity from an asynchronous signal handler (typedef) | |
defines signal handling strategies (macro constant) | |
error was encountered (macro constant) | |
Signal types | |
defines signal types (macro constant) |
Non-local jumps
Defined in header
<setjmp.h> | |
saves the context (function macro) | |
jumps to specified location (function) | |
Types | |
execution context type (typedef) |
References
- C23 standard (ISO/IEC 9899:2024):
- 7.13 Non-local jumps <setjmp.h> (p: 283-284)
- 7.14 Signal handling <signal.h> (p: 285-287)
- 7.24 General utilities <stdlib.h> (p: 356-374)
- 7.33.9 Signal handling <signal.h> (p: 458)
- 7.33.16 General utilities <stdlib.h> (p: 458)
- C17 standard (ISO/IEC 9899:2018):
- 7.13 Nonlocal jumps <setjmp.h> (p: 191-192)
- 7.14 Signal handling <signal.h> (p: 193-195)
- 7.22 General utilities <stdlib.h> (p: 248-262)
- 7.31.7 Signal handling <signal.h> (p: 332)
- 7.31.12 General utilities <stdlib.h> (p: 333)
- C11 standard (ISO/IEC 9899:2011):
- 7.13 Nonlocal jumps <setjmp.h> (p: 262-264)
- 7.14 Signal handling <signal.h> (p: 265-267)
- 7.22 General utilities <stdlib.h> (p: 340-360)
- 7.31.7 Signal handling <signal.h> (p: 455)
- 7.31.12 General utilities <stdlib.h> (p: 456)
- C99 standard (ISO/IEC 9899:1999):
- 7.13 Nonlocal jumps <setjmp.h> (p: 243-245)
- 7.14 Signal handling <signal.h> (p: 246-248)
- 7.20 General utilities <stdlib.h> (p: 306-324)
- 7.26.6 Signal handling <signal.h> (p: 401)
- 7.26.10 General utilities <stdlib.h> (p: 402)
- C89/C90 standard (ISO/IEC 9899:1990):
- 4.6 NON-LOCAL JUMPS <setjmp.h>
- 4.7 SIGNAL HANDLING <signal.h>
- 4.10 GENERAL UTILITIES <stdlib.h>
- 4.13.5 Signal handling <signal.h>
- 7.13.7 General utilities <stdlib.h>
See also
C++ documentation for Program support utilities
|