编译出现:
MSVCRTD.lib(crtexew.obj) : error LNK2019: unresolved external symbol _WinMain@16 referenced in function ___tmainCRTStartup
产生此类问题的原因是:
1. 当程序的main函数是
int main(){}
这样的写法,system 的SubSystem就是/SUBSYSTEM:CONSOLE
2. 当程序的main函数是
int main(int argc, char* argv[]){}
这样的写法,system 的SubSystem就是/SUBSYSTEM:CONSOLE
主要是因为main函数的入口和subsystem不匹配才会出现上面提及的问题。
结论:
当main函数的入口和subsystem不匹配时,一旦编译就会出现如下问题:
MSVCRTD.lib(crtexew.obj) : error LNK2019: unresolved external symbol _WinMain@16 referenced in function ___tmainCRTStartup
解决方法:
1、修改main函数
2、重设subsystem参数:
Project -> xxxx Properties -> Configuration Properties -> Linker -> System—>SubSystem

本文探讨了MSVCRTD.lib编译错误的根源,主要原因是main函数入口与subsystem不匹配。文章提供了修改main函数和重新设置subsystem参数的解决方案,旨在帮助开发者解决此类常见编译问题。
2199

被折叠的 条评论
为什么被折叠?



