STL bitset
(转) https://www.cnblogs.com/RabbitHu/p/bitset.html
如果遇见两个超级大数(大数A和大数B)进行位运算。
例如:A^B (A,B的取值均 大于0且小于2的1000次方)
如果用数组去模拟,显然过于繁琐,这里直接套用STL中的 bitset
1.声明
1 #include<bitset> //包含的头文件 2 bitset<15>a;//声明1个二进制长度为15的bitset
2.赋值
1 bitset<15>a=40;
2 cout<<a<<endl; //输出结果000000000101000
3 bitset<15>b=0x11;
4 cout<<b<<endl; //输出结果000000000010001
5 bitset<15>c(std::string("101010"));
6 cout<<c<<endl; //输出结果000000000101010
3.运算
1 bitset<5>a=2; 2 3 cout<<(a<<2)<<endl; 4 cout<<(a&=6)<<endl; 5 //左移,右移,或,且,异或等运算