C Pirmer 讀書筆記 第三章

2021-09-30 06:48:50 字數 1811 閱讀 7069

第3章 標準庫型別

⒊⒌ 標準庫bitset型別

[以下下標和位數均為 size_t 型(定義在標頭檔案 cstddef 中, unsigned 整型)]

⒈ bitset 是一種類模板,用於儲存位集,並提供測位和置位操作

⒉ 定義和初始化

bitset 在定義時需要以常量表示式的形式提供位數n

初始化時引數提供位數不足則剩餘高階位置為

0,位數過多則拋棄多餘高階位

⑴ bitsetb;

預設建構函式置各位為0

⑵ bitsetb(unsignedlongu );

使用unsignedlong值u的二進位制形式初始化

⑶ bitsetb( string s,size_tpos=0 );

bitsetb( string s,size_tpos,size_tm );

使用 string 物件s或其(下標pos起到結尾或長度為m的)子串初始化

(子)串最右端對應低階(low-order)位,向左依次類推

⒊ 操作

除支援所有內建位運算子以及==和!=外,還支援以下操作:

⑴ 訪問整個 bitset 物件

boolany();

返回是否各位不全為0

boolnone();

返回是否各位全為0

size_tcount();

返回為1的位的個數

size_tsize();

返回能容納的位數

⑵ 訪問 bitset 物件中的位

(從低階位起,各位編號依次為 0, 1, 2, 3 …)

① 下標操作符返回指定位的引用

booltest(size_tpos );

返回指定位的值

③ bitset& set(size_tpos,intval=1 );

設定指定位的值並返回物件的引用

④ bitset& reset(size_tpos );

清零指定位並返回物件的引用

⑤ bitset& flip(size_tpos );

取反特定位並返回物件的引用

也可以b[pos].flip(),返回指定位的引用

⑶ 設定整個 bitset 物件

① bitset& set();

置所有位為1並返回物件的引用

② bitset& reset();

清零所有位並返回物件的引用

③ bitset& flip();

取反所有位並返回物件的引用

⑷ 獲取 bitset 物件的值

unsignedlongto_ulong();

返回位模式相同的unsignedlong

若越界則產生執行時異常

② string to_string();

返回字串形式

③ 可使用輸出操作符列印 bitset 物件

第三章讀書筆記

程序管理 3.1程序 程序就是處於執行期的程式 目標碼存放在某種儲存介質上 但程序並不僅僅侷限於一段可執行程式 執行執行緒,執行緒,是程序活動的物件。兩種虛擬機制 虛擬處理器和虛擬記憶體。最終,程式通過exit 系統呼叫退出執行。3.2程序描述及任務結構 核心把程序的列表存放在叫做任務佇列的雙向迴圈...

第三章讀書筆記

本章是講了git的使用入門,為學習本書的人展示了git的基本用法。儘管git並不是學習android移植和linux核心 驅動開發必須掌握的技術。但對於深入研究這些底層技術的人來說,git將成為學習過程中必不可少的工具。git是什麼,git就是乙個開源的分布式版本控制系統,用以有效 高速的處理從很小...

UNP讀書筆記第三章

網路位元組序和主機位元組序大小端不一樣。linux提供了4個轉換函式 include uint16 t htons uint16 t value uint32 t htonl uint 32t value uint16 t ntohs uin16 t value uint32 t ntohl uin...