bitset的使用方法
时间: 2023-09-16 19:09:16 浏览: 81
acm相关资料vector、bitset
4星 · 用户满意度95%
bitset 是 C++ STL 中的一个类,用于存储二进制位。它提供了一系列的成员函数来方便地进行二进制位的操作,如设置、清除、翻转、查询等。
下面是一个简单的示例程序,展示了 bitset 的使用方法:
```c++
#include <iostream>
#include <bitset>
using namespace std;
int main() {
// 创建一个二进制位集合,初始值为0
bitset<8> bits;
// 设置二进制位
bits.set(1, true); // 设置第2位为1
bits.set(3); // 设置第4位为1
// 查询二进制位
cout << "bits[0]: " << bits[0] << endl; // 输出:0
cout << "bits[1]: " << bits[1] << endl; // 输出:1
cout << "bits[2]: " << bits[2] << endl; // 输出:0
cout << "bits[3]: " << bits[3] << endl; // 输出:1
// 翻转二进制位
bits.flip(); // 将所有二进制位翻转
// 输出二进制位
cout << "bits: " << bits << endl; // 输出:11110010
return 0;
}
```
在上面的示例程序中,我们首先创建了一个长度为 8 的二进制位集合 `bits`,并将它的第 2 位和第 4 位设置为 1,然后查询了它的各个二进制位,接着将所有二进制位翻转,并输出结果。
除了上述的成员函数外,bitset 还支持其他的一些函数,如 `count()`(返回二进制位为 1 的个数)、`to_ulong()`(将二进制位转换为 unsigned long 类型)、`to_ullong()`(将二进制位转换为 unsigned long long 类型)等。具体使用方法可以参考 C++ STL 文档。
阅读全文