二进制位处理

时间:2015-03-12 22:28:23   收藏:0   阅读:104

__builtin_ffs(x)                       返回右起第一个‘1’的位置。

__builtin_clz(x)                       返回左起第一个‘1’之前0的个数。

__builtin_ctz(x)                      返回右起第一个‘1’之后的0的个数。

__builtin_popcount(x)             返回‘1’的个数。 

十进制转化成二进制:

#include<iostream>
#include<bitset>
using namespace std ;
int main()    {
    bitset<5> b(15) ;
    cout << b  << endl ;  //  cout << b.to.string().c_str() << endl ;
    return 0 ;
}

 

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!