中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

c++中bitset的作用是什么

發布時間:2021-08-23 20:11:18 來源:億速云 閱讀:266 作者:chen 欄目:開發技術

這篇文章主要講解了“c++中bitset的作用是什么”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“c++中bitset的作用是什么”吧!

bitset

使用bitset需要添加頭文件bitset ,bitset是一種特殊的容器 ,bitset數組中 ,每個成員只裝1bit位的數據 , 即只能是0 或 1。

bitset 的基本用法 :

初始化bitset容器

bitset<‘size'> 容器名;未初始化容器數據,會默認每位都是0

也可以給一個具體的初始化:存入int數據

bitset<‘size'> 容器名(‘num');

會將num以二進制形式儲存在bitset中,如果初始化的容器位數不夠 ,會截取num二進制形式下的左邊部分,如果bitset容器過大,會把多于的位用0填充;

也可以初始化裝入只含0和1的字符串:

biset<‘size'> 容器名('str‘);注 若str中含除0 1 外的字符會報錯

容器會將str原樣儲存在每一位中,若容器過小會優先儲存str的左邊部分,過大則用0補足

代碼示例:

	bitset<10> a;//每個成員只能裝0 或1 ,默認為0
    for(int i = 0 ; i < 10 ; i++) cout<<a[0];//可以以數組形式索引bitset容器
    cout<<endl;
    bitset<5> a1(12);//把10以二進制形式存入,容器多余的位用0補齊
    cout<<a1<<endl;//01100
    for(int i = 0 ; i < 5 ; i++) cout<<a1[i];//00110 注 bitset容器以數組形式索引時是從右往左索引
    cout<<endl;
    bitset<5> a2("0100");
    cout<<a2<<endl;//00100

c++中bitset的作用是什么

也可以使用二維形式的bitset容器(感覺像是二維)

bitset<‘size'> 容器名[n];

n表示初始化n個size字節的bitset容器

bitset<5> b[4];
    for(int i = 0 ; i < 4 ; i++)
    {
        b[i] = i;
        cout<<b[i]<<endl;
    }

c++中bitset的作用是什么

可以向b[i]中存入數據,也可以索引某個位

cout<<b[1][0]<<endl;

輸出結果1;

betsit用于數據壓縮

bitset<1000> a;//可以用于表示1000以下的正整數,若a[i] = 1 , 則表示存儲的有i這個數,這樣一個容器就可以壓縮存儲很多不同的數據
a = a<<i;//這樣操作就可以給a中壓縮存儲的數據都加上i,可大幅降低時間復雜度
a = a>>i;//同理也可以都減去i , 之后索引哪些位是1就可以知道計算后的結果

感謝各位的閱讀,以上就是“c++中bitset的作用是什么”的內容了,經過本文的學習后,相信大家對c++中bitset的作用是什么這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

c++
AI

德钦县| 虹口区| 江永县| 甘南县| 双峰县| 焉耆| 睢宁县| 沂水县| 聂拉木县| 刚察县| 化德县| 友谊县| 定西市| 遂平县| 突泉县| 册亨县| 阆中市| 五原县| 长宁区| 开鲁县| 右玉县| 商丘市| 北票市| 宁南县| 利津县| 林周县| 八宿县| 营山县| 道孚县| 永清县| 育儿| 龙川县| 西充县| 乡城县| 日土县| 朝阳市| 龙江县| 托克托县| 温泉县| 化德县| 昭通市|