我有一个名为“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)。