C PRIMER 5th 學習小結(第三章)

2021-07-22 07:07:50 字數 1091 閱讀 7832

string型別

1.定義和初始化string型別的一種新方法:

string s4(10,'c');
2.string型別的一行讀入:

getline(cin,s)

//return cin,換行符也被讀入,但不被存入

3.string的size用法:

因為string的size函式返回的是乙個

string::size_type型別的值,所以我們一般這麼寫

auto length=s.

size();

4.literal和string的加法:

編譯器會把literal自動轉化成string,前提是加法的兩邊至少有乙個string型別。因為歷史原因,字串literal和string是兩種不同的型別。

string s="abc"+'\n';//錯誤!
5.新方法:基於範圍的for語句(range for)//注意如果要修改字串的值要使用引用形式

for(auto c :str)

expression...;

6.使用索引訪問字串某個字元注意事項:

索引必須是string::string_type型別,換而言之,必須是無符號整形。一般這麼寫:

for(decltype(s.size()) index=0;index

expression...;

vector型別

1.vector型別並不是類(class),而是乙個類模板(class template)。編譯器根據模板建立類或者函式的過程叫做例項化(instantiation).

2.vector能容納絕大多數型別的物件作為其元素,但是不包括引用,因為引用不是物件。

3.在寫vector型別的vector時,一般這麼寫:

vecor   >//c++11標準允許了寫在一起,但最好還是這麼寫
4.vector的定義和初始化

文字查詢程式(C primer5th)

書上的乙個比較簡單的例題,可以輸出文字中單詞總共出現的次數,所在的行數及所在行的內容。主要的思路是建立乙個vector來分行儲存文字,然後將單詞及單詞出現行數 set 建立乙個map。通過查詢單詞獲得其對映的set。set的size為出現的次數,set的元素為出現的行數,通過set元素作為vecto...

C Primer 5th學習筆記4 異常語句

c 語言中,異常處理包括以下幾種 try語句的通用語法形式是 try catch exception declaration catch exception declaration c 標準庫中定義了一組類,用於報告標準庫函式遇到的問題。這些類分別定義在以下四個標頭檔案中 exception 最常見...

C Primer 5th學習筆記3 表示式

運算子 功能描述 一元正號 expr 一元負號 expr 乘法 expr expr 除法 expr expr 求餘 expr expr 加法 expr expr 減法 expr expr 上述運算子的優先順序中,由上往下,一元運算子優先順序最高,其次是乘除運算,最後是加減運算,所有的運算子都滿足左結...