C++main函数结束后程序运行在哪里-创新互联
今天单步调试时按F11按多了,main函数结束后程序忽然跳到了exe_common.inl里面!
成都创新互联总部坐落于成都市区,致力网站建设服务有成都网站制作、成都做网站、网络营销策划、网页设计、网站维护、公众号搭建、微信小程序、软件开发等为企业提供一整套的信息化建设解决方案。创造真正意义上的网站建设,为互联网品牌在互动行销领域创造价值而不懈努力!于是兴致大起,写了一个比Hello World还简单的程序来做实验:
int main()
{
return 0;
}
简单不?这个不是重点,我们现在开始调试
按4下F11就跳到了exe_common.inl里
又按4下F11,VS提示未找到telemetry.cpp,于是手动创建了一个空的, 看看能不能迷惑住VS,居然真的迷惑住了
||ヽ(* ̄▽ ̄*)ノミ|Ю
又按了大约10次F11,VS又提示需要 traceloggingprovider.h,于是又创建了一个(#^.^#)
又按了5下F11,它跳回了telemetry.cpp里面。又按了两下,他又跳到了exe_common.inl中。
又按了两下,跳到了utility_desktop.cpp里面,再按11下,又跳回去了。
再按两下,运行到了函数调用exit(main_result);里面,跳到这里程序才算退出了。
但是问题又来了:它调用exit函数才退出,为什么貌似没有执行exit函数呢?它直接退出了。
最后整理一下函数/模块使用次序(括号里的是模块,不在括号里的是函数):
- (源.cpp)main
- (exe_common.inl)invock_main
- (exe_common.inl)__telemetry_main_return_trigger
- (telemetry.cpp)
- (traceloggingprovider.h)
- (telemetry.cpp)
- (exe_common.inl)
- (utility_desktop.cpp)__scrt_is_managed_app
- (exe_common.inl)exit
你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧
分享标题:C++main函数结束后程序运行在哪里-创新互联
地址分享:http://cdiso.cn/article/ipesc.html