bitset

位集合容器(bitset),bitset容器是一个bit位元素的序列容器,每个元素只占一个bit位,取值只有0和1,因此很节省空间。位集是用来保存一组项或者条件的yes/no(1或者0)信息的一种简洁方法。bitset为我们简化了对于位集的处理。头文件为#include<bitset>

1.创建bitset对象

创建对象是,必须要制定容器的大小。一经定义就不能在改变。下面个这个语句定义了birset对象b,他有n个元素即n个bit位,此时所有元素值都为0;

biset<n> b;//n位多少个bit位 
2.bitset类提供的方法


再补充一个:os <<   把b中的位集输出到os流 ,即可以用cin和cout输出

也可以采取下标的方式给元素赋值和输出。

注意他的下标和位置是从后往前查

#include<bits/stdc++.h>
using namespace std; 
int main()  
{
	bitset<10> b;
	b[0] = 1; b[9] = 1;
	for(int i = 0; i < b.size(); i++) cout<<b[i];
	cout<<endl;
	
	//采用set一次将元素设置为1
	b.set(); 
	cout << b << endl;
	
	//采用reset一次将元素设置为0
	b.reset(); 
	cout << b << endl;
	
	//采用set将pos位置元素设置为1
	b.set(5);b.set(6,1); // 5 6位置设置为1 
	cout << b << endl;
	
	//采用reset将pos元素设置为0或用set将pos位置设置为0 
	b.reset(5); b.set(6,0); //5 6 位置设置为0 
	cout << b << endl;
	
	b.set(2);//第二位置为1
	cout << b << endl;
	//采用to_ulong将这个b转化为数字输出 
	cout<<b.to_ulong();
	
    return 0;
}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值