C++中 (n&1)和(1&n) 分别表示什么意思?

先说结论:这两者的作用都是相同的:(n & 1) or (1 & n)得到当前n的最低(最右)一位

n&1

  • 这里 n&1 就是——判断n是否为奇数
    因为n为奇数时,对应的二进制数最低位一定为1,n&1的结果就是1
    n为偶数时,相应的最低位为0,n&1的结果就是0.

1&n

  • 这里的 1&n 就是:
    检查二进制n的最低位,若为1,则1&n的结果就是1,
    若不为1,则1&n的结果就是0.

你可能感兴趣的:(C++,c++)