我对我的if循环有一些麻烦。评估if语句中的单个字符:C++
首先我已经指定了char符号。
void evaluate_ps(istream& input)
{
char sign;
input >> sign;
cout << sign << endl;
check(sign);
}
,打印/所以我的标志的值为 '/'
然后我去我的无效支票(字符操作)功能
void check(char operation)
{
if(operation != '-' || operation != '+' ||
operation != '*' || operation != '/')
{
return false;
}
else return true;
}
,它的返回false ...为什么!!!!我似乎无法弄清楚这一点。
谢谢大家。
轻微的风格问题(与问题无关):'if'子句*中表达式的结果是一个布尔值。你可以'return(operation!=' - '&& operation!= ...)'。代码看起来像'if(x)return true;否则返回false;'应该提高红旗。 –
没有“如果循环”这样的事情。循环是一个重复执行的语句:for,while,do-while。 if语句仅仅是一个if语句。 –
要完成Keith Thompson,你的意思是说你的if **块**。 –