標准c++中string類函數介紹


它集成的操作函數足以完成我們大多數情況下的需要,我們可以用 = 進行賦值操作,== 進行比較,+ 做串聯,盡可以把它看成是C++的基本數據類型。

好了,進入正題………
首先,為了在我們的程序中使用string類型,我們必須包含頭文件 string

1.聲明一個C++字符串
聲明一個字符串變量很簡單:
string Str;
這樣我們就聲明了一個字符串變量,但既然是一個類,就有構造函數和析構函數。上面的聲明沒有傳入參數,所以就直接使用了string的默認的構造函數,這個函數所作的就是把Str初始化為一個空字符串。String類的構造函數和析構函數如下:
a)      string s;    //生成一個空字符串s
b)      string s(str) //拷貝構造函數 生成str的復制品
c)      string s(str,stridx) //將字符串str內“始於位置stridx”的部分當作字符串的初值
d)      string s(str,stridx,strlen) //將字符串str內“始於stridx且長度頂多strlen”的部分作為字符串的初值
e)      string s(cstr) //將C字符串作為s的初值
f)      string s(chars,chars_len) //將C字符串前chars_len個字符作為字符串s的初值。
g)      string s(num,c) //生成一個字符串,包含num個c字符
h)      string s(beg,end) //以區間beg;end(不包含end)內的字符作為字符串s的初值
i)      s.~string() //銷毀所有字符,釋放內存

2.字符串操作函數
a) =,assign()     //賦以新值
b) swap()     //交換兩個字符串的內容
c) +=,append(),push_back() //在尾部添加字符
d) insert() //插入字符
e) erase() //刪除字符
f) clear() //刪除全部字符
g) replace() //替換字符
h) + //串聯字符串
i) ==,!=,<,<=,>,>=,compare()    //比較字符串
j) size(),length()    //返回字符數量
k) max_size() //返回字符的可能最大個數
l) empty()    //判斷字符串是否為空,是空時返回ture,不是空時返回false
m) capacity() //返回重新分配之前的字符容量
n) reserve() //保留一定量內存以容納一定數量的字符
o) [ ], at() //存取單一字符
p) >>,getline() //從stream讀取某值
q) <<    //將謀值寫入stream
r) copy() //將某值賦值為一個C_string
s) c_str() //將內容以C_string返回
t) data() //將內容以字符數組形式返回
u) substr() //返回某個子字符串
v)find() //查找函數
w)begin() end() //提供類似STL的迭代器支持
x) rbegin() rend() //逆向迭代器
y) get_allocator() //返回配置器


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM