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

一、问题描述:


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


二、产生原因:


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

三:解决方案:


1、使用main函数


Project->Properties->C/C++->Preprocessor->Preprocessor Definitions 删除_WINDOWS,添加_CONSOLE

Project->Properties->Linker->System->SubSystem 选择Console (/SUBSYSTEM:CONSOLE)


2、使用WinMain函数


Project->Properties->C/C++->Preprocessor->Preprocessor Definitions 删除_CONSOLE,添加_WINDOWS

Project->Properties->Linker->System->SubSystem 选择Windows (/SUBSYSTEM:WINDOWS)



(VS2010测试环境)

操作系统装载应用程序后,做完初始化工作就转到程序的入口点执行。程序的默认入口点实际上是由链接程序设置的,不同的链接器选择的入口函数也不尽相 同。
 
在VC++下,
链接器对控制台程序设置的入口函数是 mainCRTStartup,mainCRTStartup 再调用你自己编写的 main 函数;
对图形用户界面(GUI)程序设置的入口函数是 WinMainCRTStartup,WinMainCRTStartup 调用你自己写的 WinMain 函数。
 
而具体设置哪个入口点是由连接器的“/subsystem:”选项参数确定的,它告诉操作系统如何运行编译生成的.EXE文件。
可以指定四种方 式:“CONSOLE|WINDOWS|NATIVE|POSIX”
如果这个选项参数的值为“WINDOWS”,则表示该应用程序运行时不需要控制台,有 关连接器参数选项的详细说明请参考 MSDN 库。  以下四种组合,可以实现console和windows模式的混合,可以达到不弹出DOS窗口的效果,也可以达到在Windows程序中向控制台输出printf信息了。

#pragma comment( linker, "/subsystem:windows /entry:WinMainCRTStartup" )
#pragma comment( linker, "/subsystem:windows /entry:mainCRTStartup" )#pragma comment( linker, "/subsystem:console /entry:mainCRTStartup" )
#pragma comment( linker, "/subsystem:console /entry:WinMainCRTStartup" )int APIENTRY WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR     lpCmdLine,
int       nCmdShow)
{// ... ...
}int main(void)
{// ... ...
}


转载于:https://www.cnblogs.com/lgh1992314/archive/2013/03/21/5835160.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/409030.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python小老鼠编程_邯郸pythonnot学习费用多少

邯郸pythonnot学习费用多少更新时间:2020-08-02 12:49:04注意:如果出现错误,可能是因为安装时未勾选AddPython3.5toPATH选项,此时卸载Python后重新安装时勾选AddPython3.5toPATH选项即可。1.2Mac中安装Python3Mac系统中自带了Pyth…

[线性代数]Note3--乘法和逆矩阵

继续是线性代数的学习笔记,第三节课乘法和逆矩阵 矩阵乘法 首先是对于矩阵相乘,如矩阵A和B相乘得到C,即A*BC;那么如果要得到矩阵C的一个元素,如c34,其求解如下所示: c34a31∗b14a32∗b24…∑k1na3kbk4c_{34} = a_{3…

数学/sgu 130 Circle

题意 一个圆上有2k点,请输出点于点之间连线使得所分区域块数最小的方案总数以及区域数 分析 2k个点最少能把平面分成k1的区域,易证; 至于方案数,利用递推和乘法原理 令f[i]表示2i个点时的方案数,f[0]f[1]1,则f[i]sigma…

java多线程调用nsq消费_spark-streaming连接消费nsq

spark-streaming连接消费nsq目的使用 NSQ作为消息流使用 spark-streaming 进行消费对数据进行清洗后,保存到hive仓库中连接方案1、编写Spark Streaming Custom Receivers(spark-streaming 自定义接收器),详细见文档2、使用 nsq 官方提供的Java程序连接包…

[线性代数]Note4--A的LU分解转置-置换-向量空间

继续是线性代数的学习笔记,这次的笔记包含第四、五、六节三节课的内容。 第四节课是介绍A的LU分解。A的LU分解是指将矩阵A分解成一个下三角矩阵和一个上三角矩阵的乘积。其主要应用在数值分析中,用来解线性方程、求反矩阵或者计算行列式。 第五节课是介…

java:自定义数据库连接池

http://idata.blog.51cto.com/4581576/1159243转载于:https://www.cnblogs.com/fengjian/archive/2013/03/22/2975366.html

(转)C结构体之位域(位段)

转载自C结构体之位域(位段) 有些信息在存储时,并不需要占用一个完整的字节, 而只需占几个或一个二进制位。例如在存放一个开关量时,只有0和1 两种状态, 用一位二进位即可。为了节省存储空间,并使处理简便,C…

java为何重复调用方法_通过反射调用Java中的getter:重复调用它的最快方法是什么(在性能和可伸缩性方面)?...

小编典典您可以使用MethodHandle。其Javadoc写道:使用Lookup API中的工厂方法,可以将Core ReflectionAPI对象表示的任何类成员转换为行为等效的方法句柄。例如,可以使用Lookup.unreflect将反射方法转换为方法句柄。生成的方法句柄通常提供对底…

表单提交中get 和post方式的区别

两者的区别需要通过提交表单后才看得出来,主要是在数据发送方式和接收方式上 1.在客户端,Get方式在通过URL提交数据,就是把表单内的元素,转化成url参数提交,比如你有一个页面index.html,这个页面有一个文本…

linux mysql5.7.11_在Linux中以命令行方式安装 MySQL 5.7.11 for Linux Generic 二进制版本

转至: http://www.cnblogs.com/cyberniuniu/p/5273961.htmlMySQL 目前的最新版本是 5.7.11,在 Linux 下提供特定发行版安装包(如 .rpm)以及二进制通用版安装包(.tar.gz)。一般情况下,很多项目都倾向于采用二进制通用安装包形式来进行安装配置&#xff0c…

论文阅读(2)--Picking Deep Filter Responses for Fine-grained Image Recognition

这次阅读的文章是Picking Deep Filter Responses for Fine-grained Image Recognition,这篇文章是来自上海交通大学Xiaopeng Zhang等人的工作,该文章提出了一种对深度网络中的filter进行挑选的方法,基于挑选的filter的结果构建复杂特征表达。…

vc2008使用技巧

开发程序自动以管理员的身份运行: 2008里面自带一个选项:属性-配置属性-连接器-清单文件-Uac执行级别,里面可以选转载于:https://www.cnblogs.com/fwycmengsoft/archive/2013/03/26/2982874.html

论文阅读(3)--SPDA-CNN: Unifying Semantic Part Detection and Abstraction for Fine-grained Recognition

这篇文章是来自罗格斯大学的Han Zhang等人的工作。由题目可知与上一篇文章一样,本文的作者也关注到了富有语义的局部(利用Part,Part,Part,重要事情强调三遍),作者不满足于CUB-2011数据库提供的head和body的定位结果&am…

从流水中倒推算出销量为多某值的日期

SELECT rq,spid,chkshl, (SELECT SUM(chkshl) AS chkshl FROM spls_ck WHERE T.plh < plh and spidSPH00009425 having SUM(chkshl)<10 ) AS chkshl FROM spls_ck T where spidSPH00009425 order by plh desc 转载于:https://www.cnblogs.com/bingyuw/archive/2013/03/29…