main函数执行以前还会执行什么代码

如题所述

C++中,全局对象的构造函数会在main 函数之前执行。

在大多数的实现方式里,核心会运行专门的启动代码,启动代码会在启动main()之前完成所有的初始化工作,这其中当然包括了全局对象的初始化。

这个所谓的启动代码就是Runtime函数库的Startup代码。

扩展资料:

简介

程序执行总是从main函数开始,如果有有其他函数,则完成对其他函数的调用后再返回到主函数,最后由main函数结束整个程序。

在执行程序时,由系统调用main函数,main 函数是在程序启动中完成对具有静态存储期的非局部对象的初始化之后被调用的,main函数是程序在有宿主 (hosted)环境(亦即有操作系统)中所指定的入口点。

参考资料来源:百度百科-main函数

温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-01-03
C++中,全局对象的构造函数会在main 函数之前执行。

在大多数的实现方式里,核心会运行专门的启动代码,启动代码会在启动main()之前完成所有的初始化工作,这其中当然包括了全局对象的初始化。这个所谓的启动代码就是Runtime函数库的Startup代码。
在程序执行时,系统会先调用Startup,完成函数库初始化、进程信息设立、I/O stream产生,以及对static对象的初始化等动作。然后Startup调用main()函数,把控制权交给main()函数。main()函数执行完毕,控制权交回给Startup,进行反初始化动作。
第2个回答  推荐于2016-10-08
一个C语言的执行是从本程序的主函数开始,到本程序的主函数结束。 其余函数都是一个被调用的过程。 至于头文件之类的预编译命令,既然叫预编译那就是编译之前完成的。预编译指令指示了在程序正式编译前就由编译器进行的操作本回答被提问者和网友采纳
相似回答