NAME
exit
—
perform normal program
termination
SYNOPSIS
#include
<stdlib.h>
void
exit
(int
status);
DESCRIPTION
The
exit
()
function terminates a process.
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 and close all open streams.
- Unlink all files created with the tmpfile(3) function.
Following this,
exit
() calls
_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.
RETURN VALUES
The exit
() function never returns.
SEE ALSO
_exit(2), atexit(3), fflush(3), intro(3), sysexits(3), tmpfile(3)
STANDARDS
The exit
() function conforms to
IEEE Std 1003.1-2024 (“POSIX.1”).
HISTORY
An exit
() function first appeared as a
system call in Version 1 AT&T UNIX. It
has accepted the status argument since
Version 2 AT&T UNIX. In
Version 7 AT&T UNIX, the bare system call
was renamed to _exit(2).