ATEXIT(3) BSD Programmer's Manual ATEXIT(3)
atexit - register a function to be called on exit
#include <stdlib.h> int atexit(void (*function)(void));
The atexit() function registers the given function to be called at pro- gram exit, whether via exit(3) or via return from the program's main(). Functions so registered are called in reverse order; no arguments are passed. At least 32 functions can always be registered, and more are al- lowed as long as sufficient memory can be allocated. atexit() is very difficult to use correctly without creating exit(3)-time races. Unless absolutely necessary, please avoid using it.
The atexit() function returns the value 0 if successful; otherwise the value -1 is returned and the global variable errno is set to indicate the error.
[ENOMEM] No memory was available to add the function to the list. The existing list of functions is unmodified.
exit(3)
The atexit() function conforms to ANSI X3.159-1989 ("ANSI C89"). MirBSD #10-current June 29, 1991 1