日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

开多个bitset和bitset的基本使用

發布時間:2024/4/15 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 开多个bitset和bitset的基本使用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1 #include<bits/stdc++.h> 2 using namespace std; 3 int main(){ 4 //bitset 使用整數初始化bitset 5 6 //申請三個bitset(長為10位) 7 bitset<10> bs[3]; 8 9 //初始化第三個bitset(bitset默認所有位為0,可以用數字對其初始化: 10 //數字的二進制形式與bitset的下標對應,二進制的中的低位對應于bitset下標中的地位, 11 //例如20的二進制10100,則bitset[0 1 2 3 ...]=0 0 1 0 1 0 0 0...) 12 bs[2]=20; 13 //訪問 14 //輸出第三個bitset 0位置的布爾值。 15 cout<<"bs[2][0] :"<<bs[2][0]<<endl; 16 //bitset間的按位與或 17 //輸出第三個bitset 的全部位置的值 18 cout<<"bs[2] :"<<bs[2]<<endl; 19 20 cout<<"before |"<<bs[0]<<endl; 21 bs[0]=bs[0]|bs[2]; 22 cout<<"after |"<<bs[0]<<endl; 23 24 cout<<"before &"<<bs[0]<<endl; 25 bs[0]=bs[0]&bs[1]; 26 cout<<"after &"<<bs[0]<<endl; 27 28 cout<<"before ~"<<bs[0]<<endl; 29 bs[0]=~bs[1]; 30 cout<<"after ~"<<bs[0]<<endl; 31 32 33 34 //以下為轉載。--------------------------- 35 36 //使用字符串初始化bitset 37 //注意:使用string初始化時從右向左處理,類似于字符串是書寫體,如下初始化的各個位的值將是110,而非011 38 // string bitval("001100001"); 39 // bitset<15> bs1(bitval); 40 bitset<15> bs1(123); 41 //輸出各位 42 cout<<"bs1[0] is "<<bs1[0]<<endl; 43 cout<<"bs1[1] is "<<bs1[1]<<endl; 44 cout<<"bs1[2] is "<<bs1[2]<<endl; 45 //cout輸出時也是從右邊向左邊輸出 46 cout<<bs1<<endl; 47 48 49 //bitset的方法----------------- 50 51 //any()方法如果有一位為1,則返回1 52 cout<<"bs1.any() = "<<bs1.any()<<endl; 53 54 //none()方法,如果有一個為1none則返回0,如果全為0則返回1 55 bitset<3> bsNone; 56 cout<<"bsNone.none() = " <<bsNone.none()<<endl; 57 58 //count()返回幾個位為1 59 cout<<"bs1.count() = "<<bs1.count()<<endl; 60 61 //size()返回位數 62 cout<<"bs1.size() = "<<bs1.size()<<endl; 63 64 65 //flip()返回按位取反后的bitset 66 bitset<15> bs1Flip = bs1.flip(); 67 cout<<"bs1Flip = "<<bs1Flip<<endl; 68 69 //to_ulong 二進制轉為十進制數。 70 unsigned long val = bs1.to_ulong(); 71 cout<<val; 72 73 74 return 0; 75 }

?

?output:
bs[2][0]? :0
bs[2] :0000010100
before |0000000000
after? |0000010100
before &0000010100
after? &0000000000
before ~0000000000
after? ~1111111111
bs1[0] is 1
bs1[1] is 1
bs1[2] is 0
000000001111011
bs1.any() = 1
bsNone.none() = 1
bs1.count() = 6
bs1.size() = 15
bs1Flip = 111111110000100
32644[Finished in 1.2s]

轉載于:https://www.cnblogs.com/paulzjt/p/6435545.html

超強干貨來襲 云風專訪:近40年碼齡,通宵達旦的技術人生

總結

以上是生活随笔為你收集整理的开多个bitset和bitset的基本使用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。