#include <iostream>
#include <cstdint> // 包含uint32_t等类型定义
int main() {
uint32_t bitVector = 0; // 初始化32位的位向量
int bitIndex = 5; // 假设我们操作第5位(从0开始计数)
// 设置第5位为1
bitVector |= (1 << bitIndex);
std::cout << "After setting bit: " << bitVector << std::endl; // 查看结果
// 检查第5位是否设置
if (bitVector & (1 << bitIndex)) {
std::cout << "Bit " << bitIndex << " is set." << std::endl; // 应该输出设置的信息
} else {
std::cout << "Bit " << bitIndex << " is not set." << std::endl; // 不应该执行到这一步
}
// 清除第5位
bitVector &= ~(1 << bitIndex);
std::cout << "After clearing bit: " << bitVector << std::endl; // 查看结果,应该显示为0,除了其他位可能仍为1(取决于之前的设置)
return 0;
}