在C/C++中,检查一个位是否被设置可以使用位操作符。以下是一个示例代码,演示如何检查一个整数变量中的某个位是否被设置:
#include<stdio.h>
int main() {
int num = 15; // 二进制表示为 1111
int bit_pos = 2; // 检查第2位是否被设置
// 使用位操作符检查第2位是否被设置
if ((num & (1<< bit_pos)) != 0) {
printf("第%d位被设置了\n", bit_pos);
} else {
printf("第%d位没有被设置\n", bit_pos);
}
return 0;
}
在这个示例中,我们使用了位操作符 &
和左移操作符 <<
。左移操作符将1左移2位,得到二进制数100,然后使用位操作符 &
将这个数与变量 num
进行按位与操作。如果结果不为0,则表示第2位被设置了。
领取专属 10元无门槛券
手把手带您无忧上云