atexit函数
#include<stdlib.h>
int atexit(void(*fun)(void));
功 能: 注册终止函数(即main执行结束后调用的函数)
注意:按照ISO C的规定,一个进程可以登记至少32个函数,这些函数将由exit自动调用。atexit()注册的函数类型应为不接受任何参数的void函数,exit调用这些注册函数的顺序与它们 登记时候的顺序相反。同一个函数如若登记多次,则也会被调用多次。
验证atexit的调用顺序和退出顺序:
运行结果
得出结论:exit调用这些注册函数与它们的登记顺序相反。
验证同一个函数登记多次
fun3登记了两次
结果 fun3 调用了两次