main执行之前与之后
生活随笔
收集整理的這篇文章主要介紹了
main执行之前与之后
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
main函數(shù)執(zhí)行之前,主要就是初始化系統(tǒng)相關(guān)資源:
1.設(shè)置棧指針
2.初始化static靜態(tài)和global全局變量,即data段的內(nèi)容
3.將未初始化部分的賦初值:數(shù)值型short,int,long等為0,bool為FALSE,指針為NULL,等等,即.bss段的內(nèi)容
4.運行全局構(gòu)造器,估計是C++中構(gòu)造函數(shù)之類的吧
5.將main函數(shù)的參數(shù),argc,argv等傳遞給main函數(shù),然后才真正運行main函數(shù)
main函數(shù)執(zhí)行完畢以后,返回到入口函數(shù),入口函數(shù)進(jìn)行清理工作,包括全局變量析構(gòu)、堆銷毀、關(guān)閉I/O等,然后進(jìn)行系統(tǒng)調(diào)用結(jié)束進(jìn)程。
總結(jié)
以上是生活随笔為你收集整理的main执行之前与之后的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 浅谈C++对象内存布局
- 下一篇: 单体模式singleton