程序退出时的必要处理之atexit()函数
来源:互联网 发布:js快速排序 编辑:程序博客网 时间:2024/06/05 03:50
很多时候我们需要在程序退出的时候做一些诸如释放资源的操作,但程序退出的方式有很多种。比如main()函数运行结束、在程序的某个地方用exit()结束程序、用户通过Ctrl+C或Ctrl+break操作来终止程序等等。因此需要有一种与程序退出方式无关的方法来进行程序退出时的必要处理,方法就是用atexit()函数来注册程序正常终止时要被调用的函数
atexit()函数的参数是一个函数指针,函数指针指向一个没有参数也没有返回值的函数。
atexit()的函数原型是:int atexit (void (*)(void));在一个程序中最多可以用atexit()注册32个处理函数,这些处理函数的调用顺序与其注册的顺序相反,也即最先注册的最后调用,最后注册的最先调用。
#include <stdlib.h>#include <stdio.h>void fn1(void),fn2(void),fn3(void),fn4(void);int main(void){atexit(fn1);atexit(fn2);atexit(fn3);atexit(fn4);printf("This is executed first!\n");system("pause");return 0;}void fn1(){printf(" 1111!\n");}void fn2(){printf(" 2222");}void fn3(){printf(" 3333");}void fn4(){printf("4444");}
0 0
- 程序退出时的必要处理之atexit()函数
- 程序退出处理函数----atexit()
- 用atexit()处理C/C++程序的退出
- [转]用atexit()处理C/C++程序的退出
- 进程退出(exit)处理函数 atexit
- atexit 在函数正常退出时执行的函数注册
- atexit函数:注册终止处理程序
- [C语言] 函数在退出时干了些什么?atexit函数的使用
- 让软件在退出的时候自动执行函数 -- atexit()
- 在程序退出时自动清理资源-atexit
- atexit终止处理函数
- atexit注册终止处理程序
- atexit()函数来注册程序正常终止时被调用的函数
- 程序退出的函数
- 注册终止处理函数atexit()
- atexit函数的作用
- atexit函数的作用
- atexit函数的作用
- 【oracle】字符集、国家字符集及NLS_LANG运行库
- UI_UITableView 编辑与移动
- 第四周——基于对象的程序设计——项目一(2)三角形类
- android 预置apk so库等
- 黑马程序员---java基础--GUI
- 程序退出时的必要处理之atexit()函数
- Ilkka Paananen谈Supercell的全球性战略
- fix bug of Arnold: missing either uvlist or uvidxs
- jQuery超酷3D翻牌式倒计数特效
- 第四周上机项目1.2三角形类的构造函数
- Understanding Workflow(From SalesForce)
- 【原创|小白教程】Git SSH Key 生成步骤...
- 第四周——基于对象的程序设计——项目一(3)三角形类
- eclipse tomat 报 sprint-servlet.xml 路径保存在