main 函数之前与之后
2014-04-26 21:55
253 查看
main 函数执行以前,还会执行什么代码
全局对象的构造函数会在main 函数之前执行。
main 主函数执行完毕后,是否可能会再执行一段代码
可以,可以用_onexit 注册一个函数,它会在main 之后执行int fn1(void), fn2(void), fn3(void), fn4 (void);
void main( void )
{
String str("zhanglin");
_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.
全局对象的构造函数会在main 函数之前执行。
main 主函数执行完毕后,是否可能会再执行一段代码
可以,可以用_onexit 注册一个函数,它会在main 之后执行int fn1(void), fn2(void), fn3(void), fn4 (void);
void main( void )
{
String str("zhanglin");
_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.
相关文章推荐
- main 函数之前与之后
- main 函数之前与之后
- 在程序退出main()函数之后,还有可能执行一部分代码吗?
- main 函数之前与之后
- main 函数之前与之后
- main 函数之前与之后
- main主函数执行完之后再执行其他代码的方法
- main 函数之前与之后
- 怎样在main()函数退出之后再执行一段代码?
- main 函数之前与之后
- main 函数之前与之后
- main 函数之前与之后
- main 函数之前与之后
- main 函数之前与之后
- c/c++怎样在程序的入口处main()函数之前和之后执行另外的自定义函数
- main 函数之前与之后
- 什么能在main()函数之前或之后执行
- c/c++怎样在程序的入口处main()函数之前和之后执行另外的自定义函数
- main 函数之前与之后
- 在main()之前和之后调用自己的函数