C++中string的用法

咱們知道string能夠構造一個字符串變量,那麼它的操做有哪些呢。它包含在string庫中(不是string.h沒有.h),它能夠和定義一個字符同樣定義一個字符串變量,並且強大的C++還內置了各類函數,基本實現不用再手寫操做函數。並且能夠進行字典序的比較和串操做。html

1、對位和對串操做

如何或者string串中的某一位字符呢,咱們使用數組下面的方式就能夠訪問。數組

例如app

string s = "abcdef";
cout << s[0] << endl;

結果就應該是輸出了字符'a',同時string類型也能夠直接加上另外一個字符串,例如函數

string a = "abc", b = "bcd";
a = a + b;
cout << a << endl;

結果應該輸出字符串「abcbcd」。spa

2、內置函數

在string類型中其實包括了不少函數,例如指針

 1     string s = "a";
 2     s.append(2,'b');//s.append(n,c);在s串後面加入n個c字符(append還有其餘用法,詳情可百度)
 3     s.erase(s.begin(),s.begin()+2);//s.erase(l,r);刪除某個區間,l,r都爲迭代器
 4     s.erase(it);//刪除一個字符,it爲迭代器
 5     s.size();//返回字符串s的長度大小
 6     s.begin();//返回首位置的迭代器
 7     s.end();//返回末位置的迭代器
 8     s.insert(it,ch);//在it位置插入ch字符,it爲迭代器
 9     s.resize(len,c);//把字符串當前大小置爲len,並用c填充不足的部分
10     s.empty();//判斷是否爲空串
11     s.length();//返回字符串的長度
12     s.max_size();//返回當前系統string對象可存放的最大長度
13     s.capacity();//返回當前容量
14     s.at(k);//返回第k+1個字符(該用法會堅持是否越界)
15     s.c_str();//返回C字符串的指針,內容爲s串
16     s.find(s1);//查找s中是否包含s1,並返回頭位置,找不到則返回string::npos
17     s.replace(k,x,ch);//從k位置開始,把後面的x個元素替換爲ch(還有不少其餘用法)
18     s.swap(s2);//交換兩個string字符串

並且string還支持直接比較兩個字符串的大小(內置字典序比較方式)。除了上面寫了的外,string其實還有不少函數。code

emmm寫到一半發現了個講的很全的博客,不寫了 ==htm

C++string類型詳解對象

相關文章
相關標籤/搜索