exit, _Exit - perform normal program termination
#include <stdlib.h>
void
exit(int status);
void
_Exit(int status);
The exit() and _Exit() functions terminate a process.
Before termination, exit() performs the following operations
in the order
listed:
1. Call the functions registered with the atexit(3)
function, in
the reverse order of their registration.
2. Flush all open output streams.
3. Close all open streams.
4. Unlink all files created with the tmpfile(3)
function.
The _Exit() function terminates without calling the functions registered
with the atexit(3) function. The OpenBSD implementation of
_Exit() does
not flush open output streams or unlink files created with
the tmpfile(3)
function. However, this behavior is implementation-specific.
Lastly, exit() and _Exit() call _exit(2). Note that typically _exit(2)
only passes the lower 8 bits of status on to the parent,
thus negative
values have less meaning.
The exit() and _Exit() functions never return.
_exit(2), atexit(3), intro(3), sysexits(3), tmpfile(3)
The exit() and _Exit() functions conform to ANSI/ISO/IEC
9899-1999
(``ANSI C99'').
OpenBSD 3.6 January 21, 2004
[ Back ] |