UNIX C 编程 ---- atexit函数的使用
#include <stdio.h>static void my_exit1();static void my_exit2();int main(void){if(atexit(my_exit2) != 0)printf("error: can't register my_exit2\n");if(atexit(my_exit1) != 0)printf("error: can't register my_exit1\n");printf("main is done!\n");return 0;}static voidmy_exit1(){printf("first exit handler\n");}static voidmy_exit2(){printf("second exit handler\n");}
执行这个程序
$ ./a.out
main is done!
first exit handler
second exit handler
----------------------------
终止程序每登记一次,就会被调用一次。