bitset详解 c++
c++,bitset详解,博智网带你了解详细信息 。
目录
- bitset
- 总结
bitset使用bitset需要添加头文件bitset ,bitset是一种特殊的容器 ,bitset数组中 ,每个成员只装1bit位的数据 , 即只能是0 或 1 。
bitset 的基本用法 :
初始化bitset容器
bitset<‘size'> 容器名;未初始化容器数据,会默认每位都是0
也可以给一个具体的初始化:存入int数据
bitset<‘size'> 容器名(‘num');
会将num以二进制形式储存在bitset中,如果初始化的容器位数不够 ,会截取num二进制形式下的左边部分,如果bitset容器过大,会把多于的位用0填充;
也可以初始化装入只含0和1的字符串:
biset<‘size'> 容器名('str‘);注 若str中含除0 1 外的字符会报错
容器会将str原样储存在每一位中,若容器过小会优先储存str的左边部分,过大则用0补足
代码示例:
bitset<10> a;//每个成员只能装0 或1 ,默认为0for(int i = 0 ; i < 10 ; i++) cout<<a[0];//可以以数组形式索引bitset容器cout<<endl;bitset<5> a1(12);//把10以二进制形式存入,容器多余的位用0补齐cout<<a1<<endl;//01100for(int i = 0 ; i < 5 ; i++) cout<<a1[i];//00110 注 bitset容器以数组形式索引时是从右往左索引cout<<endl;bitset<5> a2("0100");cout<<a2<<endl;//00100

文章插图

文章插图

文章插图
可以向b[i]中存入数据,也可以索引某个位
cout<<b[1][0]<<endl;
输出结果1;betsit用于数据压缩
bitset<1000> a;//可以用于表示1000以下的正整数,若a[i] = 1 , 则表示存储的有i这个数,这样一个容器就可以压缩存储很多不同的数据a = a<<i;//这样操作就可以给a中压缩存储的数据都加上i,可大幅降低时间复杂度a = a>>i;//同理也可以都减去i , 之后索引哪些位是1就可以知道计算后的结果
总结【bitset详解 c++】本篇文章就到这里了,希望能给你带来帮助,也希望您能够多多关注趣讯吧的更多内容!
- 摩羯座2020年运势详解
- 光遇峡谷先祖位置在哪 光遇霞谷先祖位置详解
- 怎么看本田车型四大车型详解
- 配制方法详解 兰花用什么土栽培最好
- 大花天竺葵怎么修剪,时间和造型方法详解
- 初三英语语法 初三英语9大语法难点详解
- 顾家家居属于什么档次 详解品牌档次和家具好坏
- Java多态性抽象类与接口细致详解
- C++:函数对象,STL提供的函数对象,函数适配器详解
- cbd家居属于什么档次 详解品牌档次和品牌信息
