• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

c++ bitset详解

c++ 搞代码 4年前 (2022-01-06) 52次浏览 已收录 0个评论
文章目录[隐藏]

这篇文章主要介绍了C++ bitset用法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

bitset

使用bitset需要添加头文件bitset ,bitset是一种特殊的容器 ,bitset数组中 ,每个成员只装1bit位的数据 , 即只能是0 或 1。

bitset 的基本用法 :

初始化bitset容器

bitset 容器名;未初始化容器数据,会默认每位都是0

也可以给一个具体的初始化:存入int数据

bitset 容器名来源gaodai#ma#com搞*代#码网(‘num’);

会将num以二进制形式储存在bitset中,如果初始化的容器位数不够 ,会截取num二进制形式下的左边部分,如果bitset容器过大,会把多于的位用0填充;

也可以初始化装入只含0和1的字符串:

biset 容器名(’str‘);注 若str中含除0 1 外的字符会报错

容器会将str原样储存在每一位中,若容器过小会优先储存str的左边部分,过大则用0补足

代码示例:

 bitset a;//每个成员只能装0 或1 ,默认为0 for(int i = 0 ; i <10 ; i++) cout< a1(12);//把10以二进制形式存入,容器多余的位用0补齐 cout< a2("0100"); cout<</div><p style="text-align: center"><br /></p><p>也可以使用二维形式的bitset容器(感觉像是二维)<br /></p><p>bitset 容器名[n];<br /></p><p>n表示初始化n个size字节的bitset容器</p><div class="gaodaimacode"><pre class="prettyprint linenums"> bitset b[4]; for(int i = 0 ; i <4 ; i++) { b[i]=i; cout<<b[i]<<endl; } <pre></div><p style="text-align: center"><br /></p><p>可以向b[i]中存入数据,也可以索引某个位</p><div class="gaodaimacode"><pre class="prettyprint linenums"> cout<<b[1][0]<<endl; 

输出结果1;

betsit用于数据压缩

 bitset a;//可以用于表示1000以下的正整数,若a[i] = 1 , 则表示存储的有i这个数,这样一个容器就可以压缩存储很多不同的数据 a = a<<i>>i;//同理也可以都减去i , 之后索引哪些位是1就可以知道计算后的结果 

总结

本篇文章就到这里了,希望能给你带来帮助,也希望您能够多多关注gaodaima搞代码网的更多内容!

以上就是c++ bitset详解的详细内容,更多请关注gaodaima搞代码网其它相关文章!


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:c++ bitset详解

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址