- NetBSD Manual Pages
EXIT(3) NetBSD Library Functions Manual EXIT(3)
Powered by man-cgi (2021-03-02).
Maintained for NetBSD
by Kimmo Suominen.
Based on man-cgi by Panagiotis Christias.
exit -- perform normal program termination
Standard C Library (libc, -lc)
exit() terminates a process. The status values EXIT_SUCCESS and
EXIT_FAILURE can be used to indicate successful and unsuccessful termina-
Before termination it performs the following functions in the order
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.
Following this, exit() calls _exit(2).
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.
The exit() function never returns.
_exit(2), at_quick_exit(3), atexit(3), intro(3), quick_exit(3),
The exit() function conforms to ANSI X3.159-1989 (``ANSI C89'').
The exit() function appeared in Version 1 AT&T UNIX.
NetBSD 9.0 September 1, 2019 NetBSD 9.0