【发布时间】:2011-12-22 12:31:40
【问题描述】:
我的 if 循环遇到了一些问题。
首先,我分配了 char 符号。
void evaluate_ps(istream& input)
{
char sign;
input >> sign;
cout << sign << endl;
check(sign);
}
打印 / 所以我的符号有值 '/'
然后我去我的 void check(char operation) 函数
void check(char operation)
{
if(operation != '-' || operation != '+' ||
operation != '*' || operation != '/')
{
return false;
}
else return true;
}
它返回错误...为什么!!!!我似乎无法弄清楚这一点。
谢谢大家。
【问题讨论】:
-
小风格问题(与问题无关):
if子句中表达式的结果是一个布尔值。你可以return (operation != '-' && operation != ...)。看起来像if(x) return true; else return false;的代码应该引发危险。 -
没有“if 循环”这样的东西。循环是重复执行的语句:
for、while、do-while。 if 语句只是一个 if 语句。 -
要完成 Keith Thompson,您的意思是说您的 if block。
标签: c++ if-statement char