为什么不此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()函数类似的事情会发生。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top