c 程式設計 讀書筆記 一

2021-07-25 03:49:03 字數 1339 閱讀 2533

2016.12.3 - 2016.12.4

完成乙個程式的設計工作分三步

寫出乙個好程式,最關鍵的就是去設計這些類

如何用c++寫出優秀的程式

第三章

一些關於string操作 p68

string s;

//裁剪字串

s.substr(a,b); // a:字串裡乙個下標的位置; b:所需字串長度

//替換字串

s.replace(a,b,"string");// a:字串裡乙個下標的位置; b:所需字串長度; string: 替換成的內容

//列印c風格的字串

printf("%s\n", s.c_str());

//讀取一行

getline(cin,s);

//新增結尾符

s+="\n";

一些關於vector的事項 p71

vector

name(100); // 100個元素的向量

vector

name[100]; //100個空間量的向量

vector不支援超出範圍的監測

int i = vector

name[101];//隨機賦值給i

另: vector與list區別

vector 順序表(陣列)

能高效進行隨機訪問,時間複雜度為o(1)

插入與刪除時記憶體塊拷貝,時間複雜度為o(n)

vector::iterator支援「+」,「+=」,「<」等操作符

list 雙向鍊錶

於vector的優劣勢相反

list::iterator則不支援「+」、「+=」、「<」等

迭代器型別

任何特定的的迭代器也都是某個型別的物件,但是可能差異巨大, 而且都是為某項特定工作專門量身打造的

ps: 經典迭代器**

#include

#include

using

namespace

std;

int main()

}

關於標準庫的忠告

一些有用的文章

《C 高階程式設計》讀書筆記(一)

1,string型別的特殊性 string型別是乙個引用型別,因此當把義字串變數賦予給另乙個字串是,會得到對記憶體中同乙個字串的兩個引用。但是,string與引用型別的常見行為有一些區別。例如,字串是不可改變的。改變其中乙個字串,就會建立乙個全新的string物件,而另乙個字串不發生任何變化。str...

《c程式語言》讀書筆記(一)1 4

自己的一些思考 1 printf和getchar的區別 scanf printf 可以輸入輸出各種型別的變數,比如int float char,而且同時輸入 輸出多個也可以 如scanf d,d a,b getchar putchar 只能輸入輸出char型別的變數,而且只能同時輸入輸出乙個字元 s...

《c程式語言》讀書筆記

舉例如下 char a 10 1 定義的時候直接用字串賦值 char a 10 hello 注意 不能先定義再給它賦值,如 char a 10 a 10 hello 這樣是錯誤的!2 對陣列中字元逐個賦值 char a 10 3 利用strcpy char a 10 strcpy a,hello 易...