二进制bitset

 1 // bitset
 2 
 3 #include<iostream>
 4 #include<bitset>
 5 #include<string>
 6 
 7 using namespace std;
 8 
 9 void main()
10 {
11     bitset<8> mybit(255);// 主要用于位操作
12 
13     for(int i=0;i<8;i++)
14     {
15         cout << mybit[i] << endl;// 1111 1111
16     }
17     
18     //-----------------------------------------
19 
20     char ch = -1;
21     bitset<8> mybit(ch);
22     for(int i=0;i<8;i++)
23     {
24         cout << mybit[i] << endl;// 1111 1111
25     }
26 
27     cin.get();
28 }
29 
30 //------------------------------------------------------------------------
31 
32 void main()
33 {
34     float fl = 19.875;
35 
36     cout << (void*)&fl << endl;
37 
38     bitset<32> mybit(fl);// bitset 一般情况下不要用于处理浮点数据,因为 无效,原因是默认会转换为整数
39     for(int i=31;i>=0;i--)
40     {
41         cout << mybit[i] << endl;// 1111 1111
42     }
43 
44     cin.get();
45 }
46 
47 //------------------------------------------------------------------------
48 
49 void main()
50 {
51     int fl = 19.875;
52 
53     cout << (void*)&fl << endl;
54 
55     bitset<32> mybit(fl);// bitset 一般情况下不要用于处理浮点数据,因为 无效
56     for(int i=31;i>=0;i--)
57     {
58         cout << mybit[i] << endl;// 1111 1111
59     }
60 
61     cin.get();
62 }
63 
64 //------------------------------------------------------------------------
65 
66 void main()
67 {
68     int num = -369     bitset<32> mybit(num);
70     for(int i=31;i>=0;i--)
71     {
72         cout << mybit[i] << endl;// 1111 1111
73     }
74 
75     string str1 = mybit.to_string();// 转换为字符串
76     
77     unsigned long long1 = mybit.to_ulong();// 转换为无符号长整型
78     
79     unsigned long long llong1 = mybit.to_ullong();// 转换为无符号长长整型
80     
81     cout << "str1= " << str1 << endl; 
82 
83     cout << "long1= " << long1 << endl; 
84 
85     cout << "llong1= " << llong1 << endl; 
86     
87     mybit.reset();// 清0
88     mybit.set(3,1);// 设置二进制位,将下表3号位置的二进制设置为1
89     str1 = mybit.to_string()
90     cout << "str1= " << str1 << endl; 
91 
92     cin.get();
93 }

 

posted on 2015-06-14 15:43  Dragon-wuxl  阅读(132)  评论(0)    收藏  举报

导航