atexit(3) Library Functions Manual atexit(3) atexit - (libc -lc) #include int atexit(typeof(void (void)) *function); atexit() function exit(3) main() . . : . POSIX.1 32 . sysconf(3). fork(2) . exec(3) . atexit() 0 . attributes(7). +------------+------------------------------------+--------------------+ || | | +------------+------------------------------------+--------------------+ |atexit() | | MT-Safe | +------------+------------------------------------+--------------------+ POSIX.1 exit(3) ( exit(3) atexit()) . ( ) exit(3) atexit(). C11, POSIX.1-2008. POSIX.1-2001 C89 C99 SVr4 4.3BSD. atexit() ( on_exit(3)) . _exit(2) exit(3). atexit() on_exit(3) : . POSIX.1 longjmp(3) atexit(). glibc 2.2.3 atexit() ( on_exit(3)) . #include #include #include static void bye(void) { printf("That was all, folks\n"); } int main(void) { long a; int i; a = sysconf(_SC_ATEXIT_MAX); printf("ATEXIT_MAX = %ld\n", a); i = atexit(bye); if (i != 0) { fprintf(stderr, "cannot set exit function\n"); exit(EXIT_FAILURE); } exit(EXIT_SUCCESS); } _exit(2), dlopen(3), exit(3), on_exit(3) 3 . . : . 6.18 8 2026 atexit(3)