string容器常用API介面

2021-10-24 14:50:35 字數 2924 閱讀 4074

目錄

string容器常用操作

1 string 建構函式

2 string基本賦值操作

3 string訪問字元操作

4 string拼接操作

5 string查詢和替換

6 string比較操作

7 string子串

8 string插入和刪除操作

9 string和c-style字串轉換

注意:

string();//建立乙個空的字串 例如: string str;      

string(const string& str);//使用乙個string物件初始化另乙個string物件

string(const char* s);//使用字串s初始化

string(int n, char c);//使用n個字元c初始化

string& operator=(const char* s);//char*型別字串 賦值給當前的字串

string& operator=(const string &s);//把字串s賦給當前的字串

string& operator=(char c);//字元賦值給當前的字串

string& assign(const char *s);//把字串s賦給當前的字串

string& assign(const char *s, int n);//把字串s的前n個字元賦給當前的字串

string& assign(const string &s);//把字串s賦給當前字串

string& assign(int n, char c);//用n個字元c賦給當前字串

string& assign(const string &s, int start, int n);//將s從start開始n個字元賦值給字串

char& operator(int n);//通過方式取字元

char& at(int n);//通過at方法獲取字元

string& operator+=(const string& str);//過載+=操作符

string& operator+=(const char* str);//過載+=操作符

string& operator+=(const char c);//過載+=操作符

int find(const string& str, int pos = 0) const; //查詢str第一次出現位置,從pos開始查詢

int find(const char* s, int pos = 0) const; //查詢s第一次出現位置,從pos開始查詢

int find(const char* s, int pos, int n) const; //從pos位置查詢s的前n個字元第一次位置

int find(const char c, int pos = 0) const; //查詢字元c第一次出現位置

int rfind(const string& str, int pos = npos) const;//查詢str最後一次位置,從pos開始查詢

int rfind(const char* s, int pos = npos) const;//查詢s最後一次出現位置,從pos開始查詢

int rfind(const char* s, int pos, int n) const;//從pos查詢s的前n個字元最後一次位置

int rfind(const char c, int pos = 0) const; //查詢字元c最後一次出現位置

string& replace(int pos, int n, const string& str); //替換從pos開始n個字元為字串str

string& replace(int pos, int n, const char* s); //替換從pos開始的n個字元為字串s

/*

compare函式在》時返回 1,《時返回 -1,==時返回 0。

比較區分大小寫,比較時參考字典順序,排越前面的越小。

大寫的a比小寫的a小。

*/int compare(const string &s) const;//與字串s比較

int compare(const char *s) const;//與字串s比較

string substr(int pos = 0, int n = npos) const;//返回由pos開始的n個字元組成的字串
string& insert(int pos, const char* s); //插入字串

string& insert(int pos, const string& str); //插入字串

string& insert(int pos, int n, char c);//在指定位置插入n個字元c

string& erase(int pos, int n = npos);//刪除從pos開始的n個字元

//string 轉 char*

string str = "itcast";

const char* cstr = str.c_str();

//char* 轉 string

char* s = "itcast";

string str(s);

在c++中存在乙個從const char*到string的隱式型別轉換,卻不存在從乙個string物件到c_string的自動型別轉換。對於string型別的字串,可以通過c_str()函式返回string物件對應的c_string.

通常,程式設計師在整個程式中應堅持使用string類物件,直到必須將內容轉化為char*時才將其轉換為c_string.

String及其常用API

string s1 abc string s2 abc string s3 a bc 字面量連線 string ss1 a string ss2 bc string ss ss1 ss2 變數連線 string sss newstring abc new關鍵字,新建物件eg str.length 注...

c 常用容器API

vector 1.vector建構函式 vector v 採用模板實現類實現,預設建構函式 vector v.begin v.end 將v begin end 區間中的元素拷貝給本身 vector n,elem 建構函式將n個elem拷貝給本身 vector const vector vec 拷貝建...

STL set容器常用API

set容器,容器內部將資料自動排序 平衡二叉樹 不能插入重複元素。multiset可以插入重複元素。不能修改容器中的值,通過刪除值,在插入。define crt secure no warnings include include include include using namespace st...