表达 2 的力量

为了表示 2(2 ^ n)个整数的幂,可以使用允许明确指定 n 的 bitshift 操作。

语法基本上是:

int pow2 = 1<<n;

例子:

int twoExp4 = 1<<4; //2^4
int twoExp5 = 1<<5; //2^5
int twoExp6 = 1<<6; //2^6
...
int twoExp31 = 1<<31; //2^31

这在定义应使其显而易见的常量值时特别有用,即使用 2 的幂,而不是使用十六进制或十进制值。

int twoExp4 = 0x10; //hexadecimal
int twoExp5 = 0x20; //hexadecimal
int twoExp6 = 64; //decimal
...
int twoExp31 = -2147483648; //is that a power of 2?

计算 2 的 int 幂的简单方法是

int pow2(int exp){
    return 1<<exp;
}