LNK2019和LNK1120

时间:2011-12-07 01:08:34

标签: c++

我目前正面临一个问题,如下面的错误

Error   1   error LNK2019: unresolved external symbol _main referenced in function ___tmainCRTStartup   MSVCRTD.lib assignment

我正在尝试重做该程序,我已按照步骤与任何用户的文章发布相同。我尝试将字符集更改为未设置,仍然没有可用的功能。我尝试从控制台更改为win转出_winmain @ 16错误,然后我更改了_main错误 我重新创建了整个解决方案文件,我没有在我的C ++编程中重新创建编码或.CPP和.H文件,

我如何解决它,我已经研究了3-4天,但我仍然无法得到我所期望的答案。希望这可以帮助我完成该计划。非常感谢你和你的帮助。

3 个答案:

答案 0 :(得分:0)

您的解决方案中可能存在一些不兼容的设置。在Visual Studio 2010中,创建一个新项目,然后从模板列表中选择Win32 Console Application。在Wizard页面上单击Next,选择Console Application,然后选择Empty Project,然后单击Finish。创建一个新的.cpp文件并将此代码放入其中

int main ()
{
}

这应该编译和链接。

答案 1 :(得分:0)

如果是windows程序:
1.menu-Project->属性,打开此“属性页”窗口
2.然后选择配置属性 - > C / C ++ - >预处理器,并在预处理器定义中删除“_CONSOLE”,添加“_WINDOWS”。
3.返回第一步:配置属性 - >链接器 - >系统,在SubSystem中将其更改为Windows(/ SUBSYSTEM:WINDOWS)

如果是控制台程序:
1.menu - >项目 - >属性,弹出“属性页”窗口
2.然后选择配置属性 - > C / C ++ - >预处理器,并删除“_WINDOWS”int预处理器定义添加“_CONSOLE”。
3.返回第一步:Configuration Properties-> Linker-> System,在SubSystem中将其更改为CONSOLE(/ SUBSYSTEM:CONSOLE)

答案 2 :(得分:-1)

你的程序中有主要功能吗?因为Windows运行时库(您提到的MSVCRTD.lib)将调用您的main函数作为入口点。如果您没有,则会出现链接错误。

WinMan是win32计划的切入点。