Provided by: manpages-posix-dev_2.16-1_all bug

NAME

       atexit - register a function to run at process termination

SYNOPSIS

       #include <stdlib.h>

       int atexit(void (*func)(void));

DESCRIPTION

       The atexit() function shall register the function pointed to by func, to be called without
       arguments at normal program termination. At  normal  program  termination,  all  functions
       registered  by  the  atexit()  function  shall  be  called,  in the reverse order of their
       registration, except that a function is called after any previously  registered  functions
       that  had  already  been  called  at the time it was registered. Normal termination occurs
       either by a call to exit() or a return from main().

       At least 32 functions can be registered with atexit().

       After a successful call to any of the exec functions, any functions previously  registered
       by atexit() shall no longer be registered.

RETURN VALUE

       Upon successful completion, atexit() shall return 0; otherwise, it shall return a non-zero
       value.

ERRORS

       No errors are defined.

       The following sections are informative.

EXAMPLES

       None.

APPLICATION USAGE

       The functions registered by a call to atexit() must return to ensure that  all  registered
       functions are called.

       The  application  should call sysconf() to obtain the value of {ATEXIT_MAX}, the number of
       functions that can be registered. There is no way for an  application  to  tell  how  many
       functions have already been registered with atexit().

RATIONALE

       None.

FUTURE DIRECTIONS

       None.

SEE ALSO

       exit() , sysconf() , the Base Definitions volume of IEEE Std 1003.1-2001, <stdlib.h>

COPYRIGHT

       Portions  of  this  text  are  reprinted  and  reproduced in electronic form from IEEE Std
       1003.1, 2003 Edition, Standard for Information Technology  --  Portable  Operating  System
       Interface  (POSIX), The Open Group Base Specifications Issue 6, Copyright (C) 2001-2003 by
       the Institute of Electrical and Electronics Engineers, Inc and  The  Open  Group.  In  the
       event  of  any  discrepancy  between this version and the original IEEE and The Open Group
       Standard, the original IEEE and The Open Group  Standard  is  the  referee  document.  The
       original Standard can be obtained online at http://www.opengroup.org/unix/online.html .