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...