一个数 n 是 2 的幂,当且仅当 n 是正整数,并且 n的二进制表示中仅包含 1 个 1。

n>0 and n&(n-1)==0

一个数 n 是 4 的幂,当且仅当 n 是正整数,并且 n的二进制表示中仅包含 1 个 1,且1位于偶数位。

n>0 and n&(n-1)==0 and (n&0xaaaaaaaa)==0

相关文章: