第三章标准库类型(bitset)

来源:互联网 发布:软件脱壳是什么意思 编辑:程序博客网 时间:2024/06/11 13:14

bitset类是用来处理位集的,头文件#include<bitset>

a、定义和初始化

bitset<32> bitvec;长度值必须是常量表达式。//位集合的位置从0-31;

使用unsinged值和string初始化bitset对象。使用string对象初始化bitset是,是从string对象读入位集的顺序是从右向左;也就是说string对象的最右边字符(即下标最大的那个字符)用来初始化bitset对象的低阶位(即下标为0的位)。


bitset对象上的操作:

1、b.any()  b中是否存在为1的二进制位

2、b.none() b中不存在为1的二进制位

3、b.count() b中位为1的个数

4、b.size() b的位数

5、b[pos] b中pos位的值

6、b.test(pos) b中pos位是否为1

7、b.set() 把b中都置为1

8、b.set(pos) 把b中pos位置为1

9、b.reset() 把b中都置为0

10、b.reset(pos) 把b中pos位置为0

11、b.flip() 把b中所有位按位取反

12、b.flip(pos) 把b中pos位取反

13、b.to_ulong() 把b返回一个unsigned long 的值

14、os<<b  把b中位集输出到os流

0 0