我有一个名为“count”的整数,当满足某个条件时它会递增。所以我想问如果你写这个条件会发生什么:
if(count % 2)
{
return even_bit;
}
else
{
return odd_bit;
}
问题基本上是询问上面的 if 条件是否正在检查条件 count%2 = 0 或 count%2 !=0 当您没有在整数数据类型变量的表达式中明确定义它时。
如果表达式的计算结果为0
,它将被解释为FALSE
- 对于任何非零值,它将被解释为TRUE
。换句话说,
if(count % 2)
相当于
if(count % 2 != 0)
所以你的代码是“倒退”的。如果该陈述为真,count
则很奇怪,您很可能希望返回odd_bit
(只是在这里猜测。)。
if(count % 2)
相当于
if(count % 2 != 0)
现在这一切都取决于count
它是偶数还是奇数。如果是偶数,count%2
则为FALSE
(return odd_bit
),如果count
为奇数,count%2
则为TRUE
(return even_bit
)。