C 之string類初識

2021-10-23 16:01:32 字數 2432 閱讀 7482

string類-------標頭檔案包含#include

1、string:std提供的標準字串處理的類 class string;(成員變數,方法)

特點:可變長(動態分配,不再關注字串的長度)

2、屬性:

1)size():string的大小,不包含『\0』

2)length():string的長度,不包含『\0』

3)empty():判斷字串是否為空 返回的是bool值

4)capacity():返回的是string當前的容量

5)resize():重置string的大小,並且也可以用字元填充多餘的空間

string型別轉換成char *-------------c_str() 為了相容c語言的函式介面

eg :string s("hello world"); char * p = s.c_str();

3、string的輸入和輸出

1)string s; cin >> s;

2)string s; getline(cin, s); //getline()全域性函式,以換行符'\n'隔開

3)string s; cout >> s;

4、string的遍歷

1)string s; s[i] ;

2)string s; s.at(i);

[ ] vs at(): [ ]不會進行越界檢查,at( )會做出越界檢查

5、迭代器iterator :指標(內部)

建立乙個string類物件的時,同時會建立兩個內部指標,乙個指向第乙個字母(s.begin()),乙個指向最後的『\0』(s.end())。

string s("hello world");

正向迭代器------string:: iteratorbegin_it = s.begin();

正向迭代器------string:: iteratorend_it = s.end();

反向迭代器------string:: reverse_iteratorbegin_it = s.rbegin();

反向迭代器------string:: reverse_iteratorend_it = s.rend();

const迭代器-----string:: const_iteratorbegin_it = s.cbegin();

const迭代器-----string:: const_iteratorend_it = s.cend();

6、string的賦值

1)運算子 =

2)string s; s.assgin();

7、string的連線

1)運算子 +

8、string的比較

1)運算子 == > < >= <=

2)string s; s.compare();

9、string的子串

1)string s; s.substr();

10、string的交換

1)string s; s.swap();

11、string的查詢

1)string s; s.find(); ---- 找到則返回第乙個字元的位置,找不到則返回string:: npos

2)string s; s.find_first_of(search_str); 查詢目標字串(search_str)中任意乙個字元在s裡面第一次出現的位置。

3)string s; s.find_first_not_of(search_str); s中第乙個不是目標字串中任意乙個字元的位置。

4)string s; s.find_last_of(search_str); 查詢目標字串(search_str)中任意乙個字元在s裡面最後一次出現的位置。

5)string s; s.find_last_not_of(search_str); s中最後乙個不是目標字串中任意乙個字元的位置

12、string的替換

1)string s; s.replace();

13、string的插入

1)string s; s.insert();

14、string的刪除

1)string s; s.erase(); 引數是迭代器!!!

C 學習之string類

string類 string初始化 示例 include includeusing namespace std int main string s1 hello world 把字串賦給當前字串s1 cout string字元操作 示例 include includeusing namespace s...

C 之string類速查

基本宣告方法 string str string類的建構函式和析構函式如下 a string s 生成乙個空字串s b string s str 拷貝建構函式 生成str的複製品 c string s str,stridx 將字串str內 始於位置stridx 的部分當作字串的初值 d string...

C 之String類函式原型

include include using namespace std class string string const string s 複製建構函式 void show friend ostream operator ostream os,string s 過載輸出運算子 1 friend i...