一,问题描述

error LNK2001: unresolved external symbol _WinMain@16debug/main.exe:fatal

error LNK 1120:1 unresolved externals error executing link.exe;

二,产生这个问题可能的原因

1, 你用vc建了一个控制台程序,它的入口函数应该是main, 而你使用了WinMain.

2.  你用vc打开了一个.c/.cpp文件,然后直接编译这个文件,这个文件中使用了WinMian而不是main作为入口函数。vc这时的默认设置是针对控制台程序的。

本质原因:Win32 Application多一些和Win32 Console Application的问题,Win32 Console Application主要写dos环境下的代码,入口函数main();Win32 Application入口函数WinMain();Win32 Application和Win32 Console Application 都是工作在32位Windows环境的程序。 其Win32Application 就是普通的常见的窗口应用程序,当然有的界面做得比较个性化,比如圆形的、不规则形状的…… 它们都是所谓的GUI(Graphics User Interface图形用户接口),我们可以通过鼠标点击来完成控制。 而Win32 Console Application(win32控制台应用程序)往往是像MS-DOS窗口(XP中叫命令提示符)的样子出现,我们得用键盘输入各种命令来使用它; 或者叫CUI(Character User Interface字符用户接口)。

换句话说,如果你编写传统的C程序,必须建立Win32 Console程序,但VC里面默认的是Win32 Application,于是上面提及的链接错误就就经常出现了。而Win32 Application和Win32 Console的区别就在于VC里链接参数不同。有人问如何才能使Console    Application运行完全后自动关闭其窗口。MS-Dos窗口只有在Debug时才会出现,编译之后,直接运行编译文件,关闭文件时窗口会自动关闭。

三, 解决方法

如果入口函数是WinMain,

1.进入project-<setting-<c/c++,在category中选择preprocessor,在processor definitions中删除_CONSOLE,添加_WINDOWS

2.进入project-<setting-<Link,在Project options中将 /subsystem:console改为/subsystem:windows.

3.保存设置,Rebuild All.

如果入口函数是main,做反向的修改。

error LNK2001: unresolved external symbol _WinMain@16debug/main.exe:fatal相关推荐

  1. error LNK2001: unresolved external symbol _WinMain@16

    找到OpenGL红宝书上写到的程序,下载源代码后链接出了问题,提示如上所示 在网上找到了解决方法 一,问题描述 error LNK2001: unresolved external symbol _W ...

  2. 运行VC++6.0出现error LNK2001: unresolved external symbol _WinMain@16

    产生问题的原因 1, 你用vc建了一个控制台程序,它的入口函数应该是main, 而你使用了WinMain. 你用vc打开了一个.c/.cpp 文件,然后直接编译这个文件,这个文件中使用了WinMian ...

  3. 报错:error LNK2001:unresolved external symbol _WinMain@16

    原因是新建工程时选择错了 解决方法: 方法1.进入Project Settings ------Link ------ 将/SUBSYSTEM:WINDOWS 改为 /SUBSYSTEM:CONSOL ...

  4. 关于error LNK2001: unresolved external symbol

    学习VC++时经常会遇到链接错误LNK2001,而一般说来发生连接错误时,编译都已通过.产生连接错误的原因非常多,尤其LNK2001错误,常常使人不明其所以然.产生 LNK2001错误的原因:一个是由 ...

  5. LIBCD.lib(wincrt0.obj) : error LNK2001: unresolved external symbol

    学习VC++时经常会遇到链接错误LNK2001,而一般说来发生连接错误时,编译都已通过.产生连接错误的原因非常多,尤其LNK2001错误,常常使人不明其所以然.产生LNK2001错误的原因:一个是由于 ...

  6. error LNK2001: unresolved external symbol

    参考:点击打开链接 学习VC++时经常会遇到链接错误LNK2001,而一般说来发生连接错误时,编译都已通过.产生连接错误的原因非常多,尤其LNK2001错误,常常使 人不明其所以然.产生LNK2001 ...

  7. LIBCD.lib(wincrt0.obj) : error LNK2001: unresolved external symbol(转)

    LIBCD.lib(wincrt0.obj) : error LNK2001: unresolved external symbol(转) 学习VC++时经常会遇到链接错误LNK2001,而一般说来发 ...

  8. vs出现错错误main.obj:error LNK2001:unresolved external symbol

    错误类型: main.obj : error LNK2001: unresolved external symbol "void __cdecl vtkRenderingOpenGL_Aut ...

  9. error LNK2019: unresolved external symbol _WinMain@16 referenced in function ___tmainCRTStartup

    VS2013新建一个空的win32应用程序时 出现了链接错误 1>------ Build started: Project: AutoUpdate, Configuration: Debug ...

最新文章

  1. 二十五、内存的基础知识
  2. matlab求系统稳定时k的范围,Matlab大作业
  3. 用神经网络二分类理论重述双原子化合物的成键过程
  4. Go语言环境安装,验证go语言环境、使用文本编辑器编写一个go hello world,Go lang IDE安装,在golang中新建一个go程序
  5. 【原】StreamInsight 浅入浅出(四)—— 例子
  6. pojo和java对象_java对象 POJO和JavaBean的区别
  7. postman自动打开_编写自动执行postman的脚本
  8. LeetCode 145. 二叉树的后序遍历(递归)(迭代)(颜色标记法)
  9. 【java笔记】模拟B/S服务器
  10. javascript实现java的StringBuffer功能
  11. IBM计划收购Resilient Systems以扩大安全事件响应能力
  12. 2022-07-17 mysql使用的flex/yacc语法练习
  13. 安卓玩java模拟器_安卓系统智能手机玩JAVA游戏!JAVA模拟器让你痛快地玩!
  14. linux64位wps下载授权码,ubuntu15.04安装wps-office的64位版
  15. Dukto-R6超级实用的免费跨平台局域网文件/文件夹传输工具
  16. 循环日程表递归法c语言,分治与递归——循环赛日程表
  17. [Android实例] Android有效解决加载大图片内存溢出问题及优化虚拟机内存
  18. 顾沛《抽象代数》2.0环、子环和商环习题解答
  19. 爬虫有道词典,高精度加密版
  20. 生信蛋白分析数据库与ID转换

热门文章

  1. 【2d游戏开发】实现主角的移动,移动动画变换和奔跑加速
  2. new tech 201602
  3. 移动机器人调度监控软件全面升级(二)
  4. JSON格式中国各省份地理位置经纬度
  5. 【附源码】计算机毕业设计SSM网上拍卖系统设计
  6. 2-vulnhub靶场,Earth
  7. 微信小程序研究与学习汇总
  8. stm32 笔记 PWM输入模式测量脉宽和占空比原理
  9. 兼阅万分享:互联网新人必看,让你少走弯路
  10. iOS大小写字符串的转化