程序 启动函数
启动函数:
如果认为程序是从main(),winmain()开始执行的那就大错特错了。首先被执行的是启动函数相关代码,这段代码都是有编译器生成的。启动函数完成初始化进程在调用main函数。
对于vc程序来说可以再 中找到启动函数的源代码,对于控制台程序源代码在 中。
所有c/c++程序运行启动函数的基本作用都是相同的:
1,获取指向新进程的完整命令行的一个指针;
2,获取指向新进程的环境变量的一个指针;
3,初始化C/C++运行库的全局变量
4,内存堆栈初始化等
当操作完毕后调用main函数。
Windows应用程序必须有一个在程序启动时调用的进入入口函数。
可以使用的函数有四个:
main()
wmain()
winmain()
wwinmain()
函数的具体定义可以查阅MSDN。
但是在使用VC++编译连接程序的时候,IDE还会在入口函数之前加一个文件启动函数。与上面相对应的启动函数是
mainCRTStartup()
wmainCRTSartup()
winmainCRTSartup()
wwinmainCRTSartup()