_onexit注册函数,LIFO
来源:互联网 发布:钓鱼城之战 知乎 编辑:程序博客网 时间:2024/05/19 09:16
main 主函数执行完毕后,是否可能会再执行一段代码,给出说明?
答案:可以,可以用_onexit 注册一个函数,它会在main 之后执行
#include <stdio.h>
#include <stdlib.h>
int fn1(void), fn2(void), fn3(void), fn4 (void);
void main( void )
{
_onexit( fn1 );
_onexit( fn2 );
_onexit( fn3 );
_onexit( fn4 );
printf( "This is executed first.\n" );
}
int fn1()
{
printf( "next.\n" );
return 0;
}
int fn2()
{
printf( "executed " );
return 0;
}
int fn3()
{
printf( "is " );
return 0;
}
int fn4()
{
printf( "This " );
return 0;
}
答案:可以,可以用_onexit 注册一个函数,它会在main 之后执行
#include <stdio.h>
#include <stdlib.h>
int fn1(void), fn2(void), fn3(void), fn4 (void);
void main( void )
{
_onexit( fn1 );
_onexit( fn2 );
_onexit( fn3 );
_onexit( fn4 );
printf( "This is executed first.\n" );
}
int fn1()
{
printf( "next.\n" );
return 0;
}
int fn2()
{
printf( "executed " );
return 0;
}
int fn3()
{
printf( "is " );
return 0;
}
int fn4()
{
printf( "This " );
return 0;
}
The _onexit function is passed the address of a function (func) to be called when the program terminates normally. Successive calls to _onexit create a register of functions that are executed in LIFO (last-in-first-out) order. The functions passed to _onexit cannot take parameters.
- _onexit注册函数,LIFO
- _onexit函数注册
- C语言中的注册回调函数_onexit()
- _onexit 实例
- _onexit用法
- _onexit函数的使用 完成主函数执行完毕后再执行一段程序
- c++中_onexit使用方法
- c++中_onexit使用方法
- 进销存管理(FIFO,LIFO)
- 堆栈 (LIFO)
- 下压(LIFO栈)_API
- C++中_onexit()用法简述
- C++中_onexit()用法简述
- 注册函数和注册块
- 堆栈的实现(LIFO、链表)
- Python--FIFO,LIFO,ListC,Modules
- 下压(LIFO)栈,ResizingArrayStack
- 注册图形驱动函数
- 多线程
- SetRenderState 设置渲染状态
- java程序员面试题
- 重新安装oracle根据原数据文件恢复数据库
- 小企鹅输入法fcitx在RedHat9下安装
- _onexit注册函数,LIFO
- Microsoft OLE DB Provider for Oracle
- workers.properties配置
- mysql数据库出错代码列表
- DownloadManager下载管理类2.3新增API介绍
- ext的数据库排序
- Working with Delphi’s new Exception.StackTrace
- eax, ebx, ecx, edx, esi, edi, ebp, esp 各寄存器作用
- PKU 2777 线段树