August 11, 2002 EXIT 3

### NAME

exit - perform normal program termination

### LIBRARY

Standard C Library (libc, -lc)

### SYNOPSIS

```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). 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), intro(3), tmpfile(3)

### STANDARDS

The exit(``) function conforms to ANSI X3.159-1989 (``ANSI C89'') .