置位操作
使用位操作OR(|)操作符去设置某个bit位为1.
number |= 1UL << n;
将number的第n位置1,n从0开始.
如果number超过unsigned long长度,则使用1ULL << n.
复位操作
使用位操作AND(&)操作符去设置某个bit位为0.
number &= ~(1UL << n);
将number的第n位置0,n从0开始.
取反操作
使用位操作XOR(^)操作符去设置某个bit位取反。
number ^= 1UL << n;
将number的第n位取反.
获取操作
将number右移n位,然后使用AND操作符相与.
bit = (number >> n)& 1U;
这将获取number第n位的值存储到bit中。
本文详细介绍了如何使用位操作符OR, AND和XOR进行位置、复位、取反以及位值获取。通过实例演示了如何在unsigned long类型中操作特定位,并提供了获取单个位值的方法。掌握这些技巧有助于提升代码效率和理解底层计算机工作原理。
2937

被折叠的 条评论
为什么被折叠?



