c++ <bitset>

 bitset()

#include<bitset>

//定义

bitset<n> bs1; // 长度 n 位,默认全0

cin>>bs1;      // 标准读入

bitset<8> bs2 (string("10110011")); // 用字符串初始化

bitset<8> bs3 (num);                // 用整数初始化

bool bs[i]  // 下标索引获取每一位值,自右往左 0 开始

 

函数操作时间
bs.all()全部位为1,返回 true 
bs.any()至少1位设置为1,返回 true,否则 false 
bs.count()返回设置为1的位数 

bs.flip(i)

bs.flip()

翻转第i位(最右是第0位)

翻转所有位

 
bs.none()全部为0,返回 true, 否则 false 

bs.set()

bs.set(i)

bs.set(i, 0)

设置全1

bs[i] = 1

bs[i] = 0

返回自身

bs.to_string()

返回 字符串形式 
bs.to_ullong()返回 位形式相等的 unsigned long long 整数2^64 - 1bs:1111 = 15
bs.to_ulong()返回 位形式相等的 unsigned long 整数 2^32 - 1 
bs.size()返回位数 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值