C++ bitset的简单使用示例

时间:2021-05-20

bitset 一般代替 bool 数组使用,常用于优化空间,因为 bitset 中一个元素只占 1 bit。

bitset 的大小在定义使就需要确定。如果想要不定长的 bitset,就需要使用 vector。

bitset 的定义:

bitset<16> bt; // 定义大小为16的bitset,每一位都是0bitset<16> bt(string("11001")); // 定义大小为16的bitset,并用string初始化,注意高位为0,也就是 0000000000011001

bitset 可以直接使用 cin 和 cout 输入输出

bitset<16> bt;cin >> bt;cout << bt << endl;

bitset 可以像数组一样访问或修改某一位置的元素,注意0表示低位。

bitset<8> bt;bt[0] = 1; // 00000001

bitset 也可以像一个数一样进行位运算:与(&)、或(|)、异或(^)、取反(~)、左移(<<)、右移(>>)。

常用函数:

bitset<8> bt;bt.size(); // 返回大小bt.count(); // 返回1的个数bt.set(); // 全部置1bt.set(pos); // pos位置1bt.reset(); // 全部置0bt.reset(pos); // pos位置0bt.flip(); // 全部取反bt.flip(pos); // pos位取反

以上就是C++ bitset的简单使用示例的详细内容,更多关于C++ bitset的资料请关注其它相关文章!

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章