#include<bits/stdc++.h>
using namespace std;
const int maxn = 10;
bitset<maxn>B;
int main(){
cout<<B<<endl; // 所有位依次输出
int pos =1;
cout<<B.size()<<endl; // 返回容器大小
B.set(pos); cout<<B<<endl; // 将pos位置为1
B.set(); cout<<B<<endl; // 将所有位置都置为1 .
cout<<B.count()<<endl ; // 容器中有几个1
cout<<B[1]<<B[0]<<endl; // 可以用下标直接访问 [0,n-1].
cout<<B.any()<<endl; // 所有位置中 是否有1的存在
B.reset(); cout<<B<<endl; // 所有位置都变为0
B.reset(pos) ; cout<<B<<endl; // 将pos位置为0
B.flip(); cout<<B<<endl; //翻转容器中的所有位
B.flip(pos); cout<<B<<endl; //翻转pos位
int x=9;
bitset<3> bs(x); cout<<bs<<endl; // 可以直接将整数传入,自动变为2进制数,但是如果容器不够存会自动截断整数的前部
string ss="1010111000000";
bitset<10>c(ss); cout<<c<<endl; //可以直接传入string 类型,但是如果容器不够,会自动截断string的后部分
bitset<5>a(string("1010"));
bitset<5>b(string("0011"));
cout<<(a<<1)<<endl; // 支持 移位 ,左移右移
cout<<(a|b)<<endl; // 支持 | ^ & 注意这里如果两容器的大小不一样是会报错
return 0;
}
【Biset的常用函数】
最新推荐文章于 2024-05-16 22:58:23 发布
本文详细介绍了C++中bitset类的各种操作方法,包括初始化、位的设置与重置、位翻转、位运算等,并展示了如何使用这些操作来处理二进制数据。通过具体的代码示例,读者可以更好地理解bitset的用法及其在实际编程中的应用。

630

被折叠的 条评论
为什么被折叠?



