bitset 用法整理


//构造函数 bitset<n> b //b有n位,每位都是0 //例: bitset<5> b,则b为00000 bitset<n> b(u) //b是unsigned long型u的一个副本 //例: bitset<32> b(0xffff) 则b的0~15位是1,其余都为0 //即从低位开始填写,长度不够则补0,长度超过舍弃高位 bitset<n> b(s) //b是string对象s中含有的位串的副本 //例: bitset<5> b("1100") 则b为01100 // bitset<5> b("101100") 则b为10110 //字符串的最低位为b的最高位,不够补0,多余舍弃字符串低位 bitset<n> b(s, pos, n); //b是s中从位置pos开始的n个位的副本 //例: bitset<5> b("1110101", 1, 4) 则b为00101 // bitset<5> b("1110101", 1) 则b为11010,从字符串的下标1开始到最后 //字符串初始化记住方法,对于区间(beg, end),若无beg,默认为0, //若无end,默认为s.end();从beg开始数,取出min(n, end - beg + 1), //若长度等于n,则为b的各位,若不等,则在前面补0 //bitset对象的操作 b.any() //b中是否存在置为1的二进制位 b.none() //b中是否不存在置为1的二进制位 b.count() //b中为1的二进制位的个数 b.size() //b中二进制位的个数 b[pos] //访问b中pos处的二进制位 b.test(pos) //b中在pos处的二进制位是否为1 b.set() //把b中所有二进制位置为1 b.set(pos) //把b中pos处的二进制位置为1 b.set() //把b中所有二进制位置为0 b.set(pos) //把b中pos处的二进制位置为0 b.flip() //把b中所有二进制位逐位取反 b.flip(pos) //把b中在pos处二进制位取反 b.to_ulong() //把b中同样的二进制位返回一个unsigned long值 os << b //把b中的位集输出到os流

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值