prj1 error LNK2019: 无法解析的外部符号 _WinMain@16 ,该符号在函数 _WinMainCRTStartup 中被引用

时间:2022-11-21 02:06:25
vs.net 2003建了一个win32项目,其中增加一个hello.c文件。
/*  hello.c */
#include<stdio.h>
void main(void)
{
printf("Hello world!");
}

却编译不过
prj1 error LNK2019: 无法解析的外部符号 _WinMain@16 ,该符号在函数 _WinMainCRTStartup 中被引用


本人很菜。请教各位

16 个解决方案

#1


int main(int argc, char* argv[])

我承认我是来骗分的 ~-~

#2


还是不行呢

#3


建的是win32 console application 吗?

#4


建的是win32 application,不是win32 console application

如果建win32 console application,它闪一下就没了。

#5


我在后面加个getch()就行了

#6


win32 application 为什么不行呢

#7


在程序最开始的地方加上以下语句
#pragma comment(linker, "/subsystem:console")

#8


win32 application 和win32 console application链接的库不同.
在project -> property里,c/c++选项中,选择precompiled headers 将create/use precompiled headers的值改为Not Using Precompiled Headers

#9


win32 app的主函数应该是WinMain(),而win32 console app的主函数是main().你的win32 app里没有WinMain(),所以出错。

#10


工程类型对不对console 还是windows
project >> setting >> 在link 的project options 中将/subsystem:windows(console)删了

#11


WIN32选择控制台程序(即console)

#12


接分是王道!

#13


如果IDE是vs2005的话就可以在项目属性中更改链接器中的选择:subsystem:windows(console)就可以了

#14


谢谢。。。。。。。。。。。。。

#15


是不是没有包含tchar.h
结果_tWinMain没有被展开

#16


引用 7 楼 sammylan 的回复:
在程序最开始的地方加上以下语句
#pragma   comment(linker,    "/subsystem:console ")


这个可以  不过还是相当于改为控制台程序了 

#1


int main(int argc, char* argv[])

我承认我是来骗分的 ~-~

#2


还是不行呢

#3


建的是win32 console application 吗?

#4


建的是win32 application,不是win32 console application

如果建win32 console application,它闪一下就没了。

#5


我在后面加个getch()就行了

#6


win32 application 为什么不行呢

#7


在程序最开始的地方加上以下语句
#pragma comment(linker, "/subsystem:console")

#8


win32 application 和win32 console application链接的库不同.
在project -> property里,c/c++选项中,选择precompiled headers 将create/use precompiled headers的值改为Not Using Precompiled Headers

#9


win32 app的主函数应该是WinMain(),而win32 console app的主函数是main().你的win32 app里没有WinMain(),所以出错。

#10


工程类型对不对console 还是windows
project >> setting >> 在link 的project options 中将/subsystem:windows(console)删了

#11


WIN32选择控制台程序(即console)

#12


接分是王道!

#13


如果IDE是vs2005的话就可以在项目属性中更改链接器中的选择:subsystem:windows(console)就可以了

#14


谢谢。。。。。。。。。。。。。

#15


是不是没有包含tchar.h
结果_tWinMain没有被展开

#16


引用 7 楼 sammylan 的回复:
在程序最开始的地方加上以下语句
#pragma   comment(linker,    "/subsystem:console ")


这个可以  不过还是相当于改为控制台程序了