无法解析的外部符号 _main,该符号在函数 “int __cdecl invoke_main(void)“ …或无法解析的外部符号 _WinMain@16,该符号在函数 “int…
基本都有讲属性页的更改:1.编辑更改C/C++的预处理器中定义的值,如果报错的是_main就删掉_CONSOLE改成WINDOWS,报错的是_WinMain就反之,删掉WINDOWS然后新增_CONSOLE;2.然后要更改链接器中系统——子系统的控制台(CONSOLE)和窗口(WINODWS),改成对应的即第一点中如果改成了WINDOWS就同步改为窗口;如果改成了_CONSOLE那么这里也同步改成
基本都有讲属性页的更改:1.编辑更改C/C++的预处理器中定义的值,如果报错的是_main就删掉_CONSOLE改成WINDOWS,报错的是_WinMain就反之,删掉WINDOWS然后新增_CONSOLE;2.然后要更改链接器中系统——子系统的控制台(CONSOLE)和窗口(WINODWS),改成对应的即第一点中如果改成了WINDOWS就同步改为窗口;如果改成了_CONSOLE那么这里也同步改成控制台,务必一一对应。具体原因在于“链接器需要选择正确的C/C++运行库函数”,而有些时候比如我新建空项目,它总默认新建的是控制台项目,以前做OpenGL就大概率要调整,现在也是如此。
这些相关内容大家都能搜到,但如果是来回修改来回报错,比如说你改成控制台它报错main,改成窗口它又报错WinMain的话,那么可以尝试留意:
1.如果是操作DirectX,要注意链接器——常规中的附加依赖项是否已按照要求配置(比如d3d9.lib、d3dx9.lib、winmm.lib)虽然具体报错不一样但大致也可能出现“无法解析”这类问题;
2.根据网友评论和自己实操发现问题在于——函数名main或者WinMain没有敲对。要注意,不仅是main敲错成mian这类会报错,把WinMain敲成winmain或者winMain也会报错!博主就是多次尝试无果后逐步排查发现居然扑街在首字母W大小写上……
代码人一定要注意重点函数大小写问题啊,一把辛酸泪。
更多推荐
所有评论(0)