修改 main函数 开始前和结束后的函数

LeonTown 2009-05-20 07:02:45
请教,

应该怎样添加和编写函数,
应用在main()函数的开始前,和结束后?

谢谢!
...全文
109 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
LeonTown 2009-05-20
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 crst_zh 的回复:]
全局对象,有构造和析构,一个在main()之前,一个在main()之后。
[/Quote]

Cool!!
crst_zh 2009-05-20
  • 打赏
  • 举报
回复
全局对象,有构造和析构,一个在main()之前,一个在main()之后。
光宇广贞 2009-05-20
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 operatingtuzi 的回复:]
结束之后: exit()函数

exit()函数会执行atexit,onexit所注册的所有函数(先进后出),将做一些自身清理工作,然后把控制权交给主机环境.

例子:

int fun2()
{ cout < <"fun2";
return 0;
}
这里fun要有返回值,并且无参,不然无法转化成onexit

void fun3()
{ cout < <"fun3";
}
这里是用atexit注册的,无返回值无参数

int _tmain(int argc, _TCHAR* argv[])
{ //函数执行顺序相反
_onexit(f…
[/Quote]

龙MM专业回答,MM是高手!
Charles_Ch 2009-05-20
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 operatingtuzi 的回复:]
结束之后: exit()函数

exit()函数会执行atexit,onexit所注册的所有函数(先进后出),将做一些自身清理工作,然后把控制权交给主机环境.

例子:

int fun2()
{ cout < <"fun2";
return 0;
}
这里fun要有返回值,并且无参,不然无法转化成onexit

void fun3()
{ cout < <"fun3";
}
这里是用atexit注册的,无返回值无参数

int _tmain(int argc, _TCHAR* argv[])
{ //函数执行顺序相反
_onexit(f…
[/Quote]

int _tmain(int argc, _TCHAR* argv[])

这个是什么意思??
开心乐源 2009-05-20
  • 打赏
  • 举报
回复
前:链接时候,设置ENTRYPOINT./entry:pre_main
后:1)堆栈修改。(不推荐)
2)atexit(post_main);
liliangbao 2009-05-20
  • 打赏
  • 举报
回复
帮顶~
等高手~
operatingtuzi 2009-05-20
  • 打赏
  • 举报
回复
结束之后: exit()函数

exit()函数会执行atexit,onexit所注册的所有函数(先进后出),将做一些自身清理工作,然后把控制权交给主机环境.

例子:

int fun2()
{ cout<<"fun2";
return 0;
}
这里fun要有返回值,并且无参,不然无法转化成onexit

void fun3()
{ cout<<"fun3";
}
这里是用atexit注册的,无返回值无参数

int _tmain(int argc, _TCHAR* argv[])
{ //函数执行顺序相反
_onexit(fun2);
atexit(fun3);
}
coreyao1988 2009-05-20
  • 打赏
  • 举报
回复
帮顶~~~
aaaa3105563 2009-05-20
  • 打赏
  • 举报
回复
``` UP

65,211

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧