compare 函式
s.compare函式的幾種引數形式
s.compare(s2)//比較s和s2;
s.compare(pos1,n1,s2)//將s中從s1開始的n1個字元與s2進行比較
s.compare(pos1,n1,s2,pos2,n2)//將s中從pos1開始的n1個字元和s2中從pos2 開始的n2個字元進行比較。
s.compare(cp)//比較s和cp 指向的位址開始以空字元結尾的字元陣列
s.compare(pos1,n1,cp)//將s中pos1開始的n1個字元和cp 指向的位址開始以空字元結尾的字元陣列進行比較
s.compare(pos1,n1,cp,n2)//將s中以pos1開始的n1個字元和cp指向的位址開始以空字元結尾的字元陣列中n2個字元進行比較
數值轉換
string 和數值之間的轉換
to_string(val)//返回val 的string 表示。val可以是任何算術型別。對每個浮點型別和int 型別都有相應的to_string版本,小整型會被提公升
stoi(s,p,b);
stol(s,p,b);
stoul(s,p,b);
stoll(s,p,b);
stoull(s,p,b);
//返回s的起始子串的數值,返回型別分別是 int,long,unsigned long,long long,unsigned long long; b 表示轉換所用的基數,預設為10,。p是size_t指標,用來儲存s中第乙個非數值字元的下標,p預設為0,不儲存下標。
stof(s,p);
stod(s,p);
stold(s,p);
//返回子串的數值,返回型別分別為float,double,long double,引數p的作用同上。
note:如果string 不能轉換一組數值,這些函式丟擲乙個異常invalid_argument異常,如果轉換得到的數值無法用任何型別來表示,則丟擲out of range
C語言字串學習總結
字串 實質就是多個字串行,有多個字元組成 c語言中是沒有string這種型別的,通常在c中是用字元陣列來儲存字串的。字串可以看做乙個特殊的字元陣列,為了和普通的陣列分開,故在字串的尾部加上乙個結束標誌 0 0 是乙個ascii碼值為0的字元,是乙個空的操作符,表示什麼也沒有,所以採用字元陣列存放字串...
C 字串總結
字串 1.字串的建立與表示形式 string s1 this is a string string s2 new string a 4 aaaa char chfirst s1 2 i int count s2.length 4 注意 string 是unicode 字串,即每個英文本母佔兩個位元組...
C 之字串類學習總結
一 回顧c語言對字串的實現 一般我們在c語言要實現對字串操作的話,一般是採用字元陣列或者一組函式來實現的,為啥這樣做呢,那是因為c語言裡面根本就沒有字串型別的關鍵字 而且c語言也支援自定義型別,所以更加無法獲得字串型別 為了解決這個問題,在c 中,引入了自定義型別,而且可以通過類來完成對字串型別的定...