博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
无法解析的外部符号 _WinMain@16 fatal error LNK1120: 1 个无法解析的外部命令
阅读量:6815 次
发布时间:2019-06-26

本文共 1051 字,大约阅读时间需要 3 分钟。

一,问题描述

MSVCRTD.lib(crtexew.obj) : error LNK2019: 无法解析的外部符号 _WinMain@16,该符号在函数 ___tmainCRTStartup 中被引用
Debug\jk.exe : fatal error LNK1120: 1 个无法解析的外部命令

error LNK2001: unresolved external symbol _WinMain@16

debug/main.exe:fatal error LNK 1120:1 unresolved externals
error executing link.exe;

二,原因及解决办法

产生这个问题的真正原因是c语言运行时找不到适当的程序入口函数,

一般情况下,如果是windows程序,那么WinMain是入口函数,在VS2008中新建项目为“win32项目”

如果是dos控制台程序,那么main是入口函数,在VS2008中新建项目为“win32控制台应用程序”

而如果入口函数指定不当,很显然c语言运行时找不到配合函数,它就会报告错误。

修改设置适应你的需求

如果是windows程序:

1.菜单中选择 Project->Properties, 弹出Property Pages窗口

2.在左边栏中依次选择:Configuration Properties->C/C++->Preprocessor,然后在右边栏的Preprocessor Definitions对应的项中删除_CONSOLE, 添加_WINDOWS.

3.在左边栏中依次选择:Configuration Properties->Linker->System,然后在右边栏的SubSystem对应的项改为Windows(/SUBSYSTEM:WINDOWS)

如果是控制台程序:

1.菜单中选择 Project->Properties, 弹出Property Pages窗口

2.在左边栏中依次选择:Configuration Properties->C/C++->Preprocessor,然后在右边栏的Preprocessor Definitions对应的项中删除_WINDOWS, 添加_CONSOLE.

3.在左边栏中依次选择:Configuration Properties->Linker->System,然后在右边栏的SubSystem对应的项改为CONSOLE(/SUBSYSTEM:CONSOLE)

转载地址:http://nsbzl.baihongyu.com/

你可能感兴趣的文章
OkHttp3-拦截器(Interceptor)
查看>>
Bootstrap在实际生产开发中的使用心得
查看>>
Google推出实时内容洞察工具 为用户提供表现最好的内容
查看>>
虚拟机故障与故障处理工具之指令篇
查看>>
iOS 基础知识学习目录索引
查看>>
My_Base_notes
查看>>
Node assert断言学习及mocha框架与travisCI初探
查看>>
大话转岗 PHP 开发小结
查看>>
React的状态管理
查看>>
寻找一种易于理解的一致性算法(扩展版)下
查看>>
MySQL - 高可用性:少宕机即高可用?
查看>>
2018电影票房分析-谁才是票房之王
查看>>
程序员可以干到多少岁?
查看>>
Storm系列(六)storm和kafka集成
查看>>
东南亚的招聘骗局,程序员请注意!
查看>>
Android 获得View宽高的几种方式
查看>>
iOS正则表达式
查看>>
关于javascript的this指向问题
查看>>
Promise的理解和用法
查看>>
java B2B2C Springboot电子商城系统-高可用的服务注册中心
查看>>