char sign = '+';
cout << "Enter '+' for addition or '-' for subtraction: ";
        cin >> sign;
        if ( sign != '+' || sign != '-' ) {
            cout << "you can only enter '+' or '-'!\n";
            return 1;
        }


当我输入“ +”或“-”符号时,将显示错误消息。

最佳答案

是的您的代码存在以下问题:

    if ( sign != '+' || sign != '-' )


如果sign == '+',则第一个条件为false,但第二个条件为true。显然,false || true计算为true

我认为您是要使用sign != '+' && sign != '-'吗?

关于c++ - 为什么cin无法识别正负号?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21211289/

10-14 04:52