未解决的外部在Visual Studio 2008在Win 32 C-程序
-
16-09-2019 - |
题
为什么不此C-程序编译,哪些无效的ERR消息的含义:
#include <stdio.h>
int main() {
char op = ' ';
char cont = ' ';
int tal1 = 0;
int tal2 = 0;
int result;
int ok = 1;
printf("Welcome\n");
do {
printf("Which one (+ - * /)? ");
scanf("%c", &op); fflush(stdin);
printf("Number?: ");
scanf("%d", &tal1); fflush(stdin);
printf("Number: ");
scanf("%d", &tal2); fflush(stdin);
ok=1;
switch(op){
case '+':
result=tal1+tal2;
break;
case '-':
result=tal1-tal2;
break;
case '*':
result=tal1*tal2;
break;
case '/':
result=tal1/tal2;
break;
default:
printf("Wrong\n");
ok=0;
break;
}
if(ok)
printf("Answer: %d\n", result);
printf("Continue? (j/n)"); fflush(stdin);
}while (cont == 'j');
printf("Thanks!\n");
return 0;
}
ERR一团糟: 错误4错误LNK2019:解析外部符号_WinMain @ 16在功能___tmainCRTStartup MSVCRTD.LIB引用 错误5致命错误LNK1120:1周无法解析的外部
解决方案
检查您的连接设置(项目属性 - >连接器 - >系统)。
子系统属性应设置为 CONSOLE 强>
其他提示
您正在编译一个Windows(win32)中的应用,但有main()函数代替的WinMain()。
您应该要么改变你的项目类型以某种控制台应用程序(不记得这正是怎么叫)或了解编写Windows应用程序。
的问题是Win32应用程序使用的WinMain()为它们的主要功能,并在那里执行一个消息循环。所以,当你试图编译Win32应用程序没有定义的WinMain()函数,编译器会抱怨这一点。如果你会写一个控制台应用程序,并不会提供一个main()函数类似的事情会发生。
不隶属于 StackOverflow