带符号的C ++偶数技巧

时间:2014-09-03 10:20:07

标签: c++

我确实遇到了一些有趣的简单代码,包括bool函数,用于确定给定的数字是否均匀。

通常我倾向于使用以下方法:

bool isEven(int x)
{
if (x%2 == 0)
   return true; 
else
    return false
}

我知道你可以简化这个函数,这样bool函数会在条件完成后返回true,前面加上单词:return第一个条件是正确函数会返回true,当它不是它会返回false 。但在这种特殊情况下,使用了&符运算符,如下所示:

bool isEven(int x)
{ 
return(x&1 == 0)
}

不知怎的,它有效,但我无法理解。 什么&符运算符负责,我阅读文档并且它不被用作数学运算符;(以及这个数学运算与1有什么关系?

一些正确的解释非常受欢迎:) 干杯!

0 个答案:

没有答案