NAME
exit —
perform normal program
termination
LIBRARY
Standard C Library (libc, -lc)
SYNOPSIS
#include <stdlib.h>
void
exit(
int
status);
DESCRIPTION
exit() terminates a process. The
status
values
EXIT_SUCCESS
and
EXIT_FAILURE
can be used to indicate successful and
unsuccessful termination, respectively.
Before termination it performs the following functions in the order listed:
- Call the functions registered with the
atexit(3) function, in the
reverse order of their registration.
- Flush all open output streams.
- Close all open streams.
- Unlink all files created with the
tmpfile(3) function.
Following this,
exit() calls
_exit(2).
RESTRICTIONS
Standard C guarantees only that the values zero,
EXIT_SUCCESS
, and
EXIT_FAILURE
produce meaningful results. POSIX extends this to guarantee that the least
significant 8 bits of
status are preserved and returned
to the parent via
wait(2). Values
outside the supported range 0-255 are bitwise-truncated; therefore, negative
values should not be used.
RETURN VALUES
The
exit() function never returns.
SEE ALSO
_exit(2),
at_quick_exit(3),
atexit(3),
intro(3),
quick_exit(3),
tmpfile(3)
STANDARDS
The
exit() function conforms to
ANSI
X3.159-1989 (“ANSI C89”).