vc++调试错误 (总结1)

错误提示:

nafxcwd.lib(thrdcore.obj) : error LNK2001: unresolved external symbol __endthreadex
nafxcwd.lib(thrdcore.obj) : error LNK2001: unresolved external symbol __beginthreadex
libcd.lib(crt0.obj) : error LNK2001: unresolved external symbol _main
Debug/Hello.exe : fatal error LNK1120: 3 unresolved externals

第一种解决方法:

1、“Project”->“settings”->“c/c++”

“Catagory” 选择“Code Generation”

“use run-time library”选择“debug multithreaded”

此时确定一般解决问题,也有可能出现如下问题提示:

libcmtd.lib(crt0.obj) : error LNK2001: unresolved external symbol _main
Debug/Hello.exe : fatal error LNK1120: 1 unresolved externals

此时,进行第二步操作:

2、

[Project] --> [Settings] --> 选择"Link"属性页,
在Project Options中将/subsystem:console改成/subsystem:windows

温馨提示:在Project Options窗口,右边滑动条向下滑动就会找到该项!

总结:进行以上两步操作后,问题解决!

第二种解决方法:

1.检查是否包含头文件afx.h
2.打开project->settings->general->microsoft foundation classes->
选use MFC in a static library
或选 use MFC in a shared DLL(需要把MFC的动态库放在system32文件夹下) .

本人是碰到的

nafxcwd.lib(thrdcore.obj) : error LNK2001: unresolved external symbol __endthreadex
nafxcwd.lib(thrdcore.obj) : error LNK2001: unresolved external symbol __beginthreadex

这两行错误,故用第二种方法解决,分析原因是我调用了MFC类库,但建立的控制台程序默认不加载MFC类库,故需要改此处设置。

第一种方法是在网上搜的,碰到类似的问题可以尝试一下。

你可能感兴趣的:(vc++调试错误 (总结1))