位运算的一些基本函数

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/w_udixixi/article/details/102769093

__builtin_popcount(n)

该函数时判断n的二进制中有多少个1

__builtin_ffs(n)

该函数判断n的二进制末尾最后一个1的位置,从1开始

可以理解为: l o w b i t ( x ) = x & ( x ) = 2 _ _ b u i l t i n _ f f s ( n ) 1 lowbit(x)={x} \& {(-x)}=2^{\_\_builtin\_ffs(n)-1}

__builtin_ctz(n)

该函数判断n的二进制末尾后面0的个数,n=0时结果未定义,与上面形成对应,其实本质是差不多的

猜你喜欢

转载自blog.csdn.net/w_udixixi/article/details/102769093
今日推荐