C String庫及字串流 函式分類及總結

2021-09-25 15:21:29 字數 2130 閱讀 5968

小旗的調戲字串之路就此開始

//總結給自己看的blog,可能總結的不太全面,希望不要介意,部分引用了些大佬的總結,權侵刪。

字串

使用字串需先加入string標頭檔案,並開啟名字空間

#inlcudeusing namespace std;

str.erase(a,b)     //刪除從a開始刪除b個字元

str.erase(a) //只留前a個字元

sort(s2.begin(),s2.end())
str.length()           //返回str的長度
str.empty()      //是返回1,否返回0
s1=s2.substr(a,b)    //在s2中,從a開始取b個字元,放到s1中

s1=s2.substr(a) //在s2中,返回從a到結尾的字串

//不改變原字串

//find函式在找不到指定值得情況下會返回string::npos

//string::npos 表示該型別能達到的最大值,也就是結束值

s2.find(s1) //在s2中找s1的值,若匹配返回查詢到的第乙個位置,否則返回npos

s2.find(s1,p) //從p點開始查詢匹配的字元,其他與find一致

s2.rfind(s1)		//從s2的尾開始找匹配s1的字串,若找到返回找到的字串在s2的首位置

s2.rfind(s1,p) //從s2的p位置往前匹配,若匹配,返回找到的字串在s2的首位置

such as :string s1="assdfsfd",s2="fd";

s1.rfind(s2)=6;

std::string str="to be question";

std::string str2="the ";

std::string str3="or not to be";

std::string::iterator it;

// used in the same order as described above:

str.insert(6,str2); // to be (the )question

str.insert(6,str3,3,4); // to be (not )the question

str.insert(10,"that is cool",8); // to be not (that is )the question

str.insert(10,"to be "); // to be not (to be )that is the question

str.insert(15,1,':'); // to be not to be(:) that is the question

it = str.insert(str.begin()+5,','); // to be(,) not to be: that is the question

str.insert (str.end(),3,'.'); // to be, not to be: that is the question(...)

str.insert (it+2,str3.begin(),str3.begin()+3); // (or )

---------------------

原文:

字串流

需加入標頭檔案

#include

stringstream ss;

string s1;

int a;

cin>>s1; //輸入字串,遇行暫停

getline(cin,s1) //讀入整行串

ss>>s1;

ss<

C string 字串函式

december 8,2012 程式設計指南 和 連線字串 字串賦值 和 字串比較 例如a b,aa ab 比較字串 輸出 輸入字串 注意 使用過載的運算子 時,必須保證前兩個運算元至少有乙個為 string 型別。例如,下面的寫法是不合法的 include include intmain stri...

C string 字串函式詳解

december 8,2012 程式設計指南 和 連線字串 字串賦值 和 字串比較 例如a b,aa ab 比較字串 輸出 輸入字串 注意 使用過載的運算子 時,必須保證前兩個運算元至少有乙個為 string 型別。例如,下面的寫法是不合法的 include include intmain stri...

C string 字串函式詳解

和 連線字串 字串賦值 和 字串比較 例如a b,aa ab 比較字串 輸出 輸入字串 注意 使用過載的運算子 時,必須保證前兩個運算元至少有乙個為 string 型別。例如,下面的寫法是不合法的 include include int main string str cin str str.fin...