vc6++i条件选择不成功



```c++
#include 
int main() {
    std::cout << "Hello World!\n";
    float num1,num2,result;
    char op;
    std::cout<<"输入操作数1,运算符,操作数2"<>num1>>op>>num2;
    switch(op){
        case"+":result=num1+num2;break;
        case"-":result=num1-num2;break;
        case"*":result=num1*num2;break;
        case"/":result=num1/num2;break;
        default:std::cout<"无效运算符";
            }
    if(op=='+'||op=='-'||op==''||op=='/')
    std::cout<"="<main.cpp:9:13: error: value of type 'const char[2]' is not implicitly convertible to 'int'
        case"+":result=num1+num2;break;
            ^~~
/workspace/jiajianchengchu/main.cpp:9:33: error: character  not allowed in an identifier
        case"+":result=num1+num2;break;
                                ^~
/workspace/jiajianchengchu/main.cpp:9:29: error: use of undeclared identifier 'num2;break'
        case"+":result=num1+num2;break;
                            ^
/workspace/jiajianchengchu/main.cpp:10:13: error: value of type 'const char[2]' is not implicitly convertible to 'int'
        case"-":result=num1-num2;break;
            ^~~
/workspace/jiajianchengchu/main.cpp:10:33: error: character  not allowed in an identifier
        case"-":result=num1-num2;break;
                                ^~
/workspace/jiajianchengchu/main.cpp:10:29: error: use of undeclared identifier 'num2;break'
        case"-":result=num1-num2;break;
                            ^
/workspace/jiajianchengchu/main.cpp:11:13: error: value of type 'const char[2]' is not implicitly convertible to 'int'
        case"*":result=num1*num2;break;
            ^~~
/workspace/jiajianchengchu/main.cpp:11:33: error: character  not allowed in an identifier
        case"*":result=num1*num2;break;
                                ^~
/workspace/jiajianchengchu/main.cpp:11:29: error: use of undeclared identifier 'num2;break'
        case"*":result=num1*num2;break;
                            ^
/workspace/jiajianchengchu/main.cpp:12:13: error: value of type 'const char[2]' is not implicitly convertible to 'int'
        case"/":result=num1/num2;break;
            ^~~
/workspace/jiajianchengchu/main.cpp:12:33: error: character  not allowed in an identifier
        case"/":result=num1/num2;break;
                                ^~
/workspace/jiajianchengchu/main.cpp:12:29: error: use of undeclared identifier 'num2;break'
        case"/":result=num1/num2;break;
                            ^
/workspace/jiajianchengchu/main.cpp:15:30: warning: empty character constant [-Winvalid-pp-token]
    if(op=='+'||op=='-'||op==''||op=='/')
                             ^
/workspace/jiajianchengchu/main.cpp:15:30: error: expected expression
1 warning and 13 errors generated.


```

img


代码修改:

#include <iostream>
int main() {
    std::cout << "Hello World!\n";
    float num1, num2, result;
    char op;
    std::cout << "输入操作数1,运算符,操作数2" << std::endl;
    std::cin >> num1 >> op >> num2;
    switch (op) {
    case '+': result = num1 + num2; break;
    case '-': result = num1 - num2; break;
    case '*': result = num1 * num2; break;
    case '/': result = num1 / num2; break;
    default: std::cout << op << "无效运算符";
    }
    if (op == '+' || op == '-' || op == '*' || op == '/') {
        std::cout << num1 << op << num2 << "=" << result << std::endl;
    }
}


case '+',不是case "+"
只能casez字符,不能case字符串啊

case'+'