string基本字串行容器

2021-07-04 16:50:55 字數 1809 閱讀 1983

c語言每天提供專門的字串型別,需要通過字元陣列才能對字串進行儲存和處理。在標準c++中,字串類由c++ stl實現。string是乙個基於字元的序列容器,具有vector向量一樣的內部線性結構,字元逐一寫入容器,最後以null字元結尾。跟傳統的char*字元陣列相比,string提供了豐富的函式用於字元的新增、刪除、替換、查詢和比較等。

主要有以下幾種方式。

(1)string()

string s;

(2)string(conststring&s,size_type pos=0,size_type n=npos)

string s1;

string s2(s1);

(3)string(const char*)

char* carray=」abc」;

string s(carray);

#include#includeusing namespace std;

int main()

{ string s1;

s1.push_back('a');

s1.push_back('b');

s1.push_back('c');

cout<

可以使用陣列方式和迭代器[支援反向迭代器]兩種方式訪問string中的字元。

#include#includeusing namespace std;

int main()

{ char* carray="hello,world";

string s(carray);

//陣列方式

for(int i=0;i利用erase函式和clear函式可以實現字元的刪除。

#include#includeusing namespace std;

int main()

{ char* carray="a1234567";

string s(carray);

s.erase(s.begin());

cout《利用replace函式可以實現字元的替換。

#include#includeusing namespace std;

int main()

{ char* carray="hello,boy!";

string s(carray);

s.replace(6,3,"girl");

cout《利用find、rfind、find_first_of、find_first_not_of、find_last_of、find_last_not_of等函式可以實現字元的搜尋,返回字串的位置,找不到,返回-1.

#include#includeusing namespace std;

int main()

{ string s("dog bird chicken bird cat");

//字串查詢

cout<

利用compare函式實現比較。

#include#includeusing namespace std;

int main()

{ string s1("abcdef");

string s2("abc");

coutcout《還有其他函式用以給出string容器的統計資訊,如length、size、empty、c_str等。

這裡只是給出了部分函式,還有相當多的函式沒有列出,具體可以參考c++ reference

這個**,

,該**很詳細地列出了各種用法。

#include#includeusing namespace std;

int main()

{ string s;

cout<

STL(十七)string基本字串行容器

一 string技術原理 字串由乙個個字元組成,字元分為單位元組char和雙位元組wchar t兩種。因此,構造泛型的字串類,必須適用於以上兩種型別的字元。單位元組的字串型別string和雙位元組的字串型別wstring 二 string應用基礎 include 1 建立string物件 2 字元的...

string基本字元容器

使用string容器,需要標頭檔案 include,下面介紹string的幾種用法 1.建立string物件 string s 2.給string物件賦值 2.1 直接賦值 s abcdfeg 2.2用字元指標賦值 string s char ss 100 scanf s ss s ss 注意 sc...

String基本字元系列容器

1 建立s 空字串 include include include include include include include includeusing namespace std int main string s cout 2 基本字元系列容器給string物件賦值 直接給字串物件賦值 in...