下一个最大2的幂 判断是否是2的幂

//下一个最大的二次幂
inline int nextPowerOfTwo(int x){
    x |= (x >> 1);
    x |= (x >> 2);
    x |= (x >> 4);
    x |= (x >> 8);
    x |= (x >> 16);
    return x + 1;
}


//判断是不是2的幂
inline bool isPowerOfTwo(int x){
    bool result = x > 0 && (x & (x - 1)) == 0;
    return result;
}

 

posted @ 2013-07-25 11:44  OpenSoucre  阅读(198)  评论(0编辑  收藏  举报