源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

深入探讨:main函数执行完毕后,是否可能会再执行一段代码?

  • 时间:2020-03-19 09:13 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:深入探讨:main函数执行完毕后,是否可能会再执行一段代码?
可以使用atexit()函数注册一个函数,代码如下:
[u]复制代码[/u] 代码如下:
#include "stdafx.h" #include <iostream> using namespace std; //int _onexit(void (*function)(void)); //这句可以要也可以不要 void f1() {  cout << "f1()" << endl; } void f2() {  cout << "f2()" << endl; } void f3() {  cout << "f3()" << endl; } void f4() {  cout << "f4()" << endl; } int _tmain(int argc, _TCHAR* argv[]) {  atexit(f1);  atexit(f2);  atexit(f3);  atexit(f4);  cout << "main function." << endl;  return 0; }
输出结果:
[u]复制代码[/u] 代码如下:
main f4() f3() f2() f1()
[b]注意:[/b]atexit函数是按照栈的规则来调用注册的函数,先调用的最后输出,后调用的最先输出。 PS:以上是网上大部分人认为的,还有很多人持有不同意见。在此,保留一定的看法!不足之后,还望指正!
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部