1 none();测试是否有越位
2 reset();全部清零
3 set(7, 0);把第7个字符改成0,操作二进制位
4 to_string();转换为字符串
5 to_ulong();转换为无符号整数
bitset可以实现把十进制转换为二进制,以及输出补码
1 #include <iostream> 2 #include <bitset> 3 4 void main() 5 { 6 int num = -5; 7 8 std::bitset<32>myset(num);//32个元素 9 10 for (int i = 31; i >= 0; i--) 11 { 12 std::cout << myset[i];//把num转换为二进制 13 } 14 std::cout << std::endl; 15 16 std::string str = myset.to_string();//转换为字符串 17 std::cout << str << std::endl; 18 19 unsigned int data; 20 data = myset.to_ulong();//补码 21 std::cout << data << std::endl; 22 }
set(7, 0);把第7个字符改成0,操作二进制位
1 #include <iostream> 2 #include <bitset> 3 4 void main() 5 { 6 int num = 255; 7 8 std::bitset<32>myset(num);//32个元素 9 10 for (int i = 31; i >= 0; i--) 11 { 12 std::cout << myset[i];//把num转换为二进制 13 } 14 std::cout << std::endl; 15 16 myset.set(7, 0);//把第7个字符改成0,操作二进制位 17 18 for (int i = 31; i >= 0; i--) 19 { 20 std::cout << myset[i];//把num转换为二进制 21 } 22 std::cout << std::endl; 23 24 myset.none();//测试是否有越位 25 26 myset.reset();//全部清零 27 }