C++ 比较运算符的类似数学的链接-如“if((5
为什么输出是?C++ 比较运算符的类似数学的链接-如“if((5,c++,c,if-statement,comparison-operators,C++,C,If Statement,Comparison Operators,为什么输出是? 这个条件不是只有一半正确吗?C不懂数学语法,所以 yes 不是你所期望和想要的;应该是 if(1<j<=5) 或类似的 如其他答案所述,表达式的计算公式为 if (1 < j && j <= 5) 其中,真布尔值隐式转换为1,如explaneid,例如,参考标准,这解释了为什么真值必须小于5,尽管在C中,谈论从bool到int的隐式转换以及LR关联性可能并不完全正确 1你想写的是 如果1
这个条件不是只有一半正确吗?C不懂数学语法,所以
yes
不是你所期望和想要的;应该是
if(1<j<=5)
或类似的
如其他答案所述,表达式的计算公式为
if (1 < j && j <= 5)
其中,真布尔值隐式转换为1,如explaneid,例如,参考标准,这解释了为什么真值必须小于5,尽管在C中,谈论从bool到int的隐式转换以及LR关联性可能并不完全正确
1你想写的是
如果1
在C中,1
if (1 < j && j <= 5)
((1 < j) <= 5)
=> ("true" <= 5)
=> "true"
if(1)
{
printf("yes")