windows下main启动函数
一、_initterm函数
_initterm 函数的作用就是遍历一个特定的函数指针数组,并依次调用数组中每一个非空的函数。它的典型实现如下:
void __cdecl _initterm (_PVFV * pfbegin, _PVFV * pfend) { // 从起始地址遍历到结束地址 while ( pfbegin < pfend ) { // 如果当前函数指针不为空,就调用它指向的函数 if ( *pfbegin != NULL ) (**pfbegin)(); // 执行初始化函数 ++pfbegin; // 移动到下一个指针 } }
二、__p__acmdln
CRT会解析 __p__acmdln 提供的原始命令行字符串(_acmdln),将其拆分成方便使用的 argc(参数个数)和 argv(参数数组)。最终,这些处理好的参数会被传递给程序的入口点 main(int argc, char *argv[])
三、__initenv
__initenv 是CRT内部用来存储进程环境变量块指针的全局变量。它指向一个字符串数组,这个数组里存放的就是程序当前所有的环境变量
浙公网安备 33010602011771号