i & 1判断奇偶性注意事项

i & 1 == 1 为奇数
i & 1 == 0 为偶数
(比i % 2会快很多)

取出偶数的时候, 千万不能写成这样, 因为 ‘==’ 的优先级比 ‘&’ 高

错误代码

// 什么都不会输出 因为if条件语句i & 0恒为0, 直接跳过
for(int i = 0 ; i < 4 ; i ++ )
    if(i & 1 == 0)
        cout << i << " ";
puts("");

正确代码

for(int i = 0 ; i < 4 ; i ++ )
    if((i & 1) == 0)
        cout << i << " ";
puts("");
Last modification:July 26, 2020
如果觉得我的文章对你有用,请随意赞赏