__builtin_popcount(n)

Gcc提供的内建函数__builtin_popcount(n),可以精确计算n表示成二进制时有多少个1。借助这个函数可以快速判断一个数是否是2的幂。

1 bool isPowerOfTwo(int n)
2 {
3     return n>0 && __builtin_popcount(n)==1;
4 }

 

posted on 2015-07-06 22:23  GyyZyp  阅读(669)  评论(0编辑  收藏  举报

导航