Updated: 2022/Sep/29

Please read Privacy Policy. It's for your privacy.


EXIT(3)                    Library Functions Manual                    EXIT(3)

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:

           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).

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").

HISTORY
     The exit() function appeared in Version 1 AT&T UNIX.

NetBSD 10.99                   September 1, 2019                  NetBSD 10.99