ATEXIT(3) BSD Programmer's Manual ATEXIT(3) NNAAMMEE aatteexxiitt - register a function to be called on exit SSYYNNOOPPSSIISS ##iinncclluuddee <<ssttddlliibb..hh>> _i_n_t aatteexxiitt(_v_o_i_d _(_*_f_u_n_c_t_i_o_n_)_(_v_o_i_d_)); DDEESSCCRRIIPPTTIIOONN The aatteexxiitt() function registers the given _f_u_n_c_t_i_o_n to be called at pro- gram exit, whether via exit(3) or via return from the program's _m_a_i_n. 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. RREETTUURRNN VVAALLUUEESS The aatteexxiitt() function returns the value 0 if successful; otherwise the value -1 is returned and the global variable _e_r_r_n_o is set to indicate the error. EERRRROORRSS [ENOMEM] No memory was available to add the function to the list. The existing list of functions is unmodified. SSEEEE AALLSSOO exit(3) SSTTAANNDDAARRDDSS The aatteexxiitt() function conforms to ANSI C X3.159-1989 (``ANSI C ''). 4.4BSD June 4, 1993 1