C++之bitset

 1 #include <iostream>
 2 #include <bitset>
 3 #include <string>
 4 
 5 using  namespace std;
 6 //bitset类型处理二进制
 7 int main()
 8 {
 9     //bitset类型的变量a <>内的参数表示的是长度
10     bitset<32> a;
11     cout<<a<<endl;
12     bitset<16> b=0xffff; //一个16进制等于4个二进制
13     cout<<b<<endl;
14     string s("10011001010");
15     bitset<32> c(s,5,4);//从第五位开始初始化四个,从右向左数剩余补0
16     cout<<c<<endl;
17 
18     //操作
19     bool is_set=b.any(); //如果存在1就返回true
20     bool is_notset=a.none();//如果全都是0返回true
21     size_t bits_set=b.count();//返回b里面1的个数
22     size_t bits_set1=b.size()-b.count(); //减法实现b里面0的个数
23     cout<<bits_set1<<endl;
24     a.set(); //将a中的0全部变为1
25     cout<<a<<endl;
26     a.reset();//将a中的1全部变为0
27     cout<<a<<endl;
28     a.flip();//反转 1-0 0-1
29     a.flip(8);//某一位反转
30     //
31 
32     unsigned long x=a.to_ulong(); //转换成10进制
33     cout<<x<<endl;
34 
35     //
36 
37     return 0;
38 }

 

原文链接: https://www.cnblogs.com/yh2924/p/12523432.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍;

也有高质量的技术群,里面有嵌入式、搜广推等BAT大佬

    C++之bitset

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/336284

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年3月1日 下午10:34
下一篇 2023年3月1日 下午10:34

相关推荐