bitset

头文件

#include <bitset>

定义

bitset<N> a, b;

a[x] = y; //赋值

位运算
a ^ b
a ^= b;
a | b
a |= b;
a & b
a &=b;
a << pos
a <<= pos;
a >> pos
a >>= pos;

a.set() //全部置为1
a.reset() //全部置为0
a.flip() //取反
a.flip(i) //位置i取反
a.count() //1的个数
a.none() //返回有没有1 有false 没有true
a.any() //返回有没有1 有true 没有false

a.to_string() //将bitset转换成string类型
a.to_ulong() //将bitset转换成unsigned long类型
a.to_ullong() //将bitset转换成unsigned long long类型 (c++11)

a._Find_first() //返回第一个1的位置
a._Find_next(i) //返回i之后是1的第一个位置

cppreference

posted @ 2018-08-09 11:13  tkandi  阅读(115)  评论(0编辑  收藏  举报