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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • scrapy ip池(scrapy多线程)

    反爬策略有很多,最常用的也就是ip池,下面让我们一起跟着小省开始ip池之旅吧直接上代码:由于我们的ip池是自己维护在数据库中的,所以会有查库这一说#!/usr/bin/envpython#-*-coding:utf-8-*-#Createbyshengjk1on2017/11/6fromscreptileimportpoolfromutilspider.dp

    2022年4月15日
    130
  • java压缩/解压war包

    java压缩/解压war包packagecom.kingsoft.unwar;importjava.io.BufferedInputStream;importjava.io.BufferedOutputStream;importjava.io.File;importjava.io.FileInputStream;importjava.io.FileNotFoundException;importjava.io

    2022年10月4日
    2
  • redis分布式集群3种架构方案

    redis分布式集群3种架构方案

    2021年7月6日
    78
  • markdown字体颜色设置_markdown红色字体

    markdown字体颜色设置_markdown红色字体 Markdown是一种可以使用普通文本编辑器编写的标记语言,通过类似HTML的标记语法,它可以使普通文本内容具有一定的格式。但是它本身是不支持修改背景色功能的!  从HTMLEditor转到CSDN-markdown编辑器的很多朋友可能有些不适应,明明很简单的背景色功能,这里却找不到了。  CSDN-markdown编辑器是其衍生版本,扩展了Markdown的功能(如表格、脚注、内嵌HTML等等)!对,就是内嵌HTML,接下来要讲的功能就需要使用内嵌HTML的方法来实现。  背景色由.

    2025年8月20日
    2
  • 动静内容混合站点,怎样用全站加速支持实际业务场景?

    动静内容混合站点,怎样用全站加速支持实际业务场景?

    2021年6月6日
    145
  • 图形推理1000题pdf_小学三年级逻辑推理题,学霸1分钟能做对4题,最后一题难坏家长…[通俗易懂]

    图形推理1000题pdf_小学三年级逻辑推理题,学霸1分钟能做对4题,最后一题难坏家长…[通俗易懂]逻辑推理是考察学生数学逻辑推理能力的重要方法,也是为了进入高年级以后锻炼解析几何和证明题的基础条件之一,一般小学生逻辑推理好的数学成绩都不会差,能够锻炼学生的发散思维能力,帮助快速的找出解题思路。不管是逻辑推理题还是证明题,都是让学生由已知条件解析出未知条件,已知条件里边有很多内在的关联信息,但是需要学生仔细观察,如果找不出内在的关系,这道题十有八九是解不出来的,这种题型不仅学生要善于分析还要懂得…

    2022年9月9日
    4

发表回复

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

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