VS2015 error LNK2019 无法解析的外部符号 _WinMain@16,该符号在函数 “int __cdecl invoke_main(void)”[通俗易懂]

VS2015 error LNK2019 无法解析的外部符号 _WinMain@16,该符号在函数 “int __cdecl invoke_main(void)”[通俗易懂]前言上一篇文章中,为了编译OpenCV的示例代码,然后搭建环境,最后想直接运行示例demo,我在创建新工程的时候,直接创建了一个win32窗口项目,然后环境配置完成后,将opencv的示例代码kalman.cpp直接导入到新建的vs工程中进行编译,直接报错:错误 LNK2019 无法解析的外部符号_WinMain@16,该符号在函数"int__cdeclinvoke_main(vo…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

前言

上一篇文章中,为了编译OpenCV的示例代码,然后搭建环境, 最后想直接运行示例demo,我在创建新工程的时候,直接创建了一个win32窗口项目,然后环境配置完成后,将opencv 的示例代码kalman.cpp直接导入到新建的vs工程中进行编译,直接报错:

错误	LNK2019	无法解析的外部符号 _WinMain@16,该符号在函数 "int __cdecl invoke_main(void)" (?invoke_main@@YAHXZ) 中被引用	opencvDemo	E:\MyWork\VSProject\opencvDemo\opencvDemo\MSVCRTD.lib(exe_winmain.obj)	1

在这里插入图片描述

经过网上查找问题,终于找到原因,是因为c语言运行时找不到适当的程序入口函数,一般情况下,如果是windows程序,那么WinMain是入口函数,就比如我这里创建的“win32项目”
如果是dos控制台程序,那么main是入口函数,新建项目为“win32控制台应用程序”
而如果入口函数指定不当,很显然c语言运行时找不到配合函数,它就会报告错误。
所以我这里出错的原因是我导入的kalman.cpp是一个dos控制台程序,但是我新建项目时选择的是“win32项目”,这时候修改一下配置就可以了。

解决办法:
右键工程名, 打开属性,依次找到以下路径:
在这里插入图片描述

VS2015 error LNK2019 无法解析的外部符号 _WinMain@16,该符号在函数 "int __cdecl invoke_main(void)"[通俗易懂]

然后将这里的_WINDOWS删除,并添加_CONSOLE
在这里插入图片描述

接下来再依次点击如下路径:
在这里插入图片描述

将这里的子系统切换为“控制台”,修改完成后再次编译即可。

相反,如果是windows程序,就按照相反的设置来配置即可,这里就不再赘述了。

参考地址:https://blog.csdn.net/playstudy/article/details/6661868

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/185413.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • latex中如何画表格_时态结构总结表格

    latex中如何画表格_时态结构总结表格三线表表格的合并三线表在写论文的时候我们常常会用到三线表,三线表的基本语法就是下面这个样子的。如果是在双栏的环境里,如果我们的表格比较大,我们一般需要在表格的环境中加星号,如果是表格只占一栏,这个时候我们就不需要加星号,我们假设我们使用表格的情况是占双栏的。三线表的精华就是那三根线了啦,用的命令就是\toprule,\midrule,\bottomrule这…

    2022年8月11日
    4
  • 深入理解extern使用方法

    深入理解extern使用方法

    2022年1月24日
    48
  • scala 字符串转Int, Long 类型

    scala 字符串转Int, Long 类型valstringdemo="123456"valintdemo=stringdemo.toIntvallongdemo=stringdemo.toLong

    2022年5月6日
    120
  • mybatis激活码【2021最新】

    (mybatis激活码)本文适用于JetBrains家族所有ide,包括IntelliJidea,phpstorm,webstorm,pycharm,datagrip等。https://javaforall.net/100143.htmlIntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,上面是详细链接哦~F…

    2022年3月28日
    240
  • 我为什么放弃Go语言[通俗易懂]

    我为什么放弃Go语言[通俗易懂]我为什么放弃Go语言?有好几次,当我想起来的时候,总是会问自己:这个决定是正确的吗?是明智和理性的吗?其实我一直在认真思考这个问题。开门见山地说,我当初放弃Go语言,就是因为两个“不爽”:第一,对Go语言本身不爽;第二,对Go语言社区里的某些人不爽。毫无疑问,这是非常主观的结论,但是我有足够详实的客观的论据。

    2022年6月30日
    28
  • 查看Android apk签名信息

    查看Android apk签名信息必须先安装jdk并配置好环境变量,然后运行->CMD->输入以下命令keytool-list-printcert-jarfileapp.apkWmImac-52:~fanyuanhua$keytool-list-printcert-jarfile/Users/fanyuanhua/2019-10/备忘录记事本/10.25/app-tencent-release-…

    2022年6月8日
    37

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号