對於string庫的函式用的比較少,常規的以下size()函式什麼的不在列舉,但是有些函式很好用,手寫做一下備註,省的到處查;
1.string使用print輸出:
常規條件下string只能使用cin和cout,但是使用printf輸出借助函式也可以;
使用c_str()函式
string str="abcd";
printf("%s\n",str.c_str())l
2.insert插入:
用兩種形式:
第一種,insert(pos,string)
在pos位置插入string,注意這裡的pos是要插入的string第乙個字元應該在的位置;
例如insert(3,str2),str2插入到從零開始算第四個位置,也就是儲存的是str2的第一位;
第二種,insert(it,it2,it3)
這裡的it代表的是迭代器指標,第乙個指向要插入的位置,後兩個指向插入string的起始位置和末位置;
例如:
str.insert(str.begin()+3,str2.begin(),str2.end());
這裡的插入位置的迭代器和上一種相同,就是插入string第乙個字元的起始位置;
3.erase()刪除區間內的元素:
第一種 刪除單個元素:
例如:
str.erase(str.begin()+4);
這裡刪除的是迭代器指向的元素;
第二種 刪除乙個區間內的所有元素
例如:
str.erase(str.begin()+2,str,end()-1);
這裡的區間是閉區間,包括迭代器指向的元素;
第三種 刪除區間內元素的另一種形式
形式為str.erase(pos,length)
例如:
str.erase(3,2);
這裡刪除的是pos位開始的length個字元,length從1開始計數,意為刪除元素的總個數;
4.clear()清空函式:
清空字串內的所有元素;
5.substr()擷取函式:
substr(pos,len)返回從pos開始,總長度為len的子串;
6.find()查詢子串函式:
str.find(str2)
當str2是str的子串時,返回其在str中第一次出現的位置,如果不是子串,返回string::npos(該變數常認為是find查詢失敗的標誌);
也有形式:str.find(str2,pos),也就是從pos位開始匹配str2,返回值也是第一次出現的位置,只不過給查詢的位置給定了乙個起始的距離;
7.replace()替換函式:
str.replace(pos,len,str2)代表str的pos開始,len長度的子串替換為str2;
str.replace(it1,it2,it3)代表str的迭代器1,2內的刺穿替換為str2,注意,這裡的str第二個迭代器it2指向的是尾後位置;
stl String常用函式
原文 string const char s 用c字串s初始化 const char c str const 返回乙個以null終止的c字串,用printf 輸出時需要 int size const 返回當前字串的大小 int length const 返回當前字串的長度 bool empty co...
STL string的常用函式
string npos 這是string類中的乙個成員變數,一般應用在判斷系統查詢函式的返回值上,若等於該值,表明沒有符合查詢條件的結果值。find函式 在乙個字串中查詢指定的單個字元或字元組。如果找到,就返回首次匹配的開始位置 如果沒有找到匹配的內容,則返回string npos。一般有兩個輸入引...
STL string的關鍵函式
string find 1.如果string sub abc string s cdeabcigld s.find sub s.rfind sub 這兩個函式,如果完全匹配,才返回匹配的索引,即 當s中含有abc三個連續的字母時,才返回當前索引。s.find first of sub s.find ...