标签: c++ if-statement
if (x = (1+2) < 4)
以上剪辑是否可行?它会按预期运行吗?我希望它始终将x设置为3,然后运行参数if(3&lt; 4)。
答案 0 :(得分:4)
The rules of operator precedence使您的条件相当于:
x = ((1 + 2) < 4)
所以,实际做的是评估(1 + 2) < 4以获取true,然后将其分配给x。
(1 + 2) < 4
true
x
答案 1 :(得分:2)
您想要的是通过以下方式实现
if ( ( x = 1 + 2 ) < 4 )