#include <stdlib.h>
Int atexit(void (*func)(void));
进程终止处理函数不接受任何参数;进程终止处理函数的调用顺序与设置时相反。
1 #include <stdio.h>
2 #include <stdlib.h>
3 #include <unistd.h>
4
5 void fun1(void)
6 {
7 fprintf(stdout, "first\n");
8 }
9
10 void fun2(void)
11 {
12 write(STDOUT_FILENO, "second\n", 8);
13 }
14
15 int main(int argc, char *argv[])
16 {
17 atexit(fun1);
18 atexit(fun1);
19 if(atexit(fun2) < 0)
20 perror("Error: fail to set exit handler");
21
22 return 0;
23
24 }