The
atexit();
function registers the given
function
to be called at program 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 allowed as long as sufficient memory can be allocated.
atexit();
is very difficult to use correctly without creating
exit(3/Ns)
races.
Unless absolutely necessary, please avoid using it.
RETURN VALUES
.Rv -std atexit
ERRORS
[ENOMEM]
No memory was available to add the function to the list.
The existing list of functions is unmodified.