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/