C string類常用介面

2021-10-02 04:33:52 字數 2383 閱讀 7231

string類的常用介面

(1)string類物件的常見構造

#include

#include

using

namespace std;

intmain()

(2)string類物件的容量操作

#include

#include

using

namespace std;

//size/length/capacity/clear/resize

void

test_string_1()

//reserve

void

test_string_2()

//用reserve提高插入效率,避免增容帶來的開銷

//有開銷

void

test_pushback()

} cout<}//無開銷

void

test_pushback_reserve()

} cout<}int

main()

(3)string類物件的訪問及遍歷操作

#include

#include

using

namespace std;

void

test_string_1()

void

test_string_2()

cout

string::iterator it = s.

begin()

;while

(it != s.

end())

cout

rbegin()

;while

(rit != s.

rend()

) cout

for(

auto ch : s)

cout<}int

main()

(4)string類物件的修改操作

#include

#include

using

namespace std;

intmain()

start +=3

; size_t end = url.

find

('/'

, start)

; string address = url.

substr

(start, end - start)

; cout

size_t del = url.

find

("://");

url.

erase(0

, pos +3)

; cout

}

(5)string類非成員函式

幾個例子

(1)翻轉字串

#include

using

namespace std;

string reversestring

(string s)

size_t start =0;

size_t end = s.

size()

-1;while

(start < end)

return s;

}int

main()

(2)找字串中第乙個只出現一次的字元

#include

using

namespace std;

intfirstuniqchar

(string s)

int count[

256]=;

for(

int i =

0; i < s.

size()

;++i)

for(

int i =

0; i < s.

size()

;++i)

}return-1

;}intmain()

}

(3)字串裡最後乙個字元長度

#include

using

namespace std;

void

lastwordlength()

}int

main()

C string類常用介面

string s1 構造空的string類物件s1 string s2 hello 用c格式字串構造string類物件s2 string s3 s2 拷貝構造s3s.size 返回字串有效字元長度 s.capacity 返回總空間大小 s.empty 判斷字串是否為空,為空返回true s.clea...

C String類介面的實現

對c string庫部分介面的實現,通過介面間的復用,使個個介面緊密聯絡,更加簡潔。重要介面expand 通過檢測當前物件容量是否滿足要求,對物件進行擴容等操作。此次實現string全部使用的是深拷貝。include include include includeusing namespace st...

C string類常用函式

string類的建構函式 string const char s 用c字串s初始化 string int n,char c 用n個字元c初始化 此外,string類還支援預設建構函式和複製建構函式,如string s1 string s2 hello 都是正確的寫法。當構造的string太長而無法表...