main是C/C++的入口函数么?
我们都知道程序在进入main函数之前会进行全局变量的初始化,接受main函数的两个参数,完成堆栈的初始化等操作。
程序的启动过程看起来更像是这样的(伪代码)
那么在main函数返回之后是不是意味着程序的结束呢?
这段代码展示了在main函数返回之后,程序并没有结束:
#include <stdio.h> #include <stdlib.h> void foo(void) { printf("bye!\n"); } int main() { atexit(&foo); printf("end of main\n"); return 0; }
运行结果如下:
更详细的内容参见《程序员的自我修养-链接,装载与库》P318
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。