总结:
main函数执行之前,主要就是初始化系统相关资源:
- 设置栈指针
- 初始化static静态和global全局变量,即data段的内容
- 将未初始化部分的赋初值:数值型short,int,long等为0,bool为FALSE,指针为NULL,等等,即.bss段的内容
- 运行全局构造器,估计是C++中构造函数之类的吧
- 将main函数的参数,argc,argv等传递给main函数,然后才真正运行main函数
本文详细解析了在main函数执行前,系统如何初始化资源,包括设置栈指针、初始化static静态和global全局变量、赋值未初始化部分、运行全局构造器及传递main函数参数的过程。
总结:
main函数执行之前,主要就是初始化系统相关资源:
- 设置栈指针
- 初始化static静态和global全局变量,即data段的内容
- 将未初始化部分的赋初值:数值型short,int,long等为0,bool为FALSE,指针为NULL,等等,即.bss段的内容
- 运行全局构造器,估计是C++中构造函数之类的吧
- 将main函数的参数,argc,argv等传递给main函数,然后才真正运行main函数

被折叠的 条评论
为什么被折叠?