Visual Studio 2010为何无法生成exe?(C++)(无法解析的外部符号)
MSVCRTD.lib(crtexew.obj):errorLNK2019:无法解析的外部符号_WinMain@16,该符号在函数___tmainCRTStartup中被...
MSVCRTD.lib(crtexew.obj) : error LNK2019: 无法解析的外部符号 _WinMain@16,该符号在函数 ___tmainCRTStartup 中被引用
C:\Users\jk\Desktop\求两数之和\求两数之和\Debug\求两数之和.exe : fatal error LNK1120: 1 个无法解析的外部命令
代码为:
#include <iostream>
using namespace std;
int main( )
{
int a,b,sum;
cin >>a >>b;
sum=a+b;
cout <<"a+b="<<sum <<endl;
return 0;
} 展开
C:\Users\jk\Desktop\求两数之和\求两数之和\Debug\求两数之和.exe : fatal error LNK1120: 1 个无法解析的外部命令
代码为:
#include <iostream>
using namespace std;
int main( )
{
int a,b,sum;
cin >>a >>b;
sum=a+b;
cout <<"a+b="<<sum <<endl;
return 0;
} 展开
展开全部
产生这个问题可能的原因
产生这个问题的真正原因是c语言运行时找不到适当的程序入口函数,一般情况下,如果是windows程序,那么WinMain是入口函数,如果是dos控制台程序,那么main是入口函数,而如果入口函数指定不当,很显然c语言运行时找不到配合函数,它就会报告错误。
可能:
1, 你用vc建了一个控制台程序,它的入口函数应该是main, 而你使用了WinMain.
2. 你用vc打开了一个.c/.cpp 文件,然后直接编译这个文件,这个文件中使用了WinMian而不是main作为入口函数。vc这时的默认设置是针对控制台程序的。
3.根本就没有WinMain或Main函数。
三, 解决方法
1.进入project->setting->c/c++, 在category中选择preprocessor,在processor definitions中删除_CONSOLE, 添加_WINDOWS
2.进入project->setting->Link, 在Project options中将 /subsystem:console改为/subsystem:windows.
3.保存设置,Rebuild All.
VS2005中的设置请参考对应项进行设置
四,VS2005中的设置
1.菜单中选择 Project->Properties, 弹出Property Pages窗口
2.在左边栏中依次选择:Configuration Properties->C/C++->Preprocessor,然后在右边栏的Preprocessor Definitions对应的项中删除_CONSOLE, 添加_WINDOWS.
3.在左边栏中依次选择:Configuration Properties->Linker->System,然后在右边栏的SubSystem对应的项改为Windows(/SUBSYSTEM:WINDOWS)
4.Rebuild All.
产生这个问题的真正原因是c语言运行时找不到适当的程序入口函数,一般情况下,如果是windows程序,那么WinMain是入口函数,如果是dos控制台程序,那么main是入口函数,而如果入口函数指定不当,很显然c语言运行时找不到配合函数,它就会报告错误。
可能:
1, 你用vc建了一个控制台程序,它的入口函数应该是main, 而你使用了WinMain.
2. 你用vc打开了一个.c/.cpp 文件,然后直接编译这个文件,这个文件中使用了WinMian而不是main作为入口函数。vc这时的默认设置是针对控制台程序的。
3.根本就没有WinMain或Main函数。
三, 解决方法
1.进入project->setting->c/c++, 在category中选择preprocessor,在processor definitions中删除_CONSOLE, 添加_WINDOWS
2.进入project->setting->Link, 在Project options中将 /subsystem:console改为/subsystem:windows.
3.保存设置,Rebuild All.
VS2005中的设置请参考对应项进行设置
四,VS2005中的设置
1.菜单中选择 Project->Properties, 弹出Property Pages窗口
2.在左边栏中依次选择:Configuration Properties->C/C++->Preprocessor,然后在右边栏的Preprocessor Definitions对应的项中删除_CONSOLE, 添加_WINDOWS.
3.在左边栏中依次选择:Configuration Properties->Linker->System,然后在右边栏的SubSystem对应的项改为Windows(/SUBSYSTEM:WINDOWS)
4.Rebuild All.
追问
有些不懂,
可以用简洁的语言概括吗?
展开全部
试试 项目--->属性-->配置属性-->常规(字符集:使用多字符集)
如果不行的话,把代码贴出来看看
如果不行的话,把代码贴出来看看
追问
不行啊。
代码是:
#include
using namespace std;
int main( )
{
int a,b,sum;
cin >>a >>b;
sum=a+b;
cout <<"a+b="<<sum <<endl;
return 0;
}
追答
那么很有可能是你建的工程有问题,就是二楼cdinten所说的那样,你应该建立一个win32控制台(win32console application)而你很有可能建立的是win32工程。
所以你建一个控制台程序,然后输入代码试试
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询