atexit 函数 典型的程序运行的步骤大致如下: 操作系统在创建进程之后,控制权给到程序入口 入口函数堆运行库和程序运行环境初始化,包括堆、IO、线程、全局变量构造 调用 main 函数(三个参数给到),同时接收返回值 入口函数进行清理工作,包括全局变量析构、堆销毁、关闭 IO,系统调用结束进程,返回值 Glibc 入口函数实现 MSVC CRT 入口函数