【c/c++】error LNK2005: _main already defined in /fatal error

举报
黑色地带(崛起) 发表于 2023/02/16 14:26:35 2023/02/16
【摘要】 【c/c++】error LNK2005: _main already defined in /fatal error LNK1169: one or more multiply defined sy

【c/c++】error LNK2005: _main already defined in /fatal error LNK1169: one or more multiply defined sy

 目录

错误出现场景:

错误重现:

原因分析:

解决办法:



编辑



错误出现场景:

一般出现在一些编译软件,有主函数的模块环境中

如Visual C++ 等都有main()函数



错误重现:

编辑

error LNK2005: _main already defined in xxxxxxxx.obj

(错误lnk2005:_main已在xxxxxxxxx.obj中定义)

Debug/xxxxxxxx.exe : fatal error LNK1169: one or more multiply defined symbols found

(debug / xxxxxxxx.exe:致命错误lnk1169:找到一个或多个乘法定义符号)



原因分析:

在之前就已经打开过了一个程序并且成功运行了

现在再次创建第二个程序进行编译运行的时候就会报错误:

error LNK2005: _main already defined in xxxxxxxx.obj

Debug/xxxxxxxx.exe : fatal error LNK1169: one or more multiply defined symbols found


总而言之:就是重复在同一个工程/工作空间里面编写了两个程序然后再运行而产生报错

编辑

 在Workspace下面就有2个.cpp(c++)文件


编辑


解决办法:

方法一:File中选择“Close Workspace”项,彻底关闭前一个项目

方法二:修改当前度工程/工作空间设置

方法三:每写完一个程序,都把整个软件彻底关掉,再重启软件,再新建度工程/工作空间设置

方法四:注释掉不需要的程序,再写入并执行新的程序

编辑


 再编译运行就不会报错了编辑

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。