string erase的使用心得

2021-09-06 02:12:30 字數 1136 閱讀 2500

string::erase的三種函式原形

1、iterator erase(

iterator_first,iterator_last);2、iterator erase(iterator_it);

3、basic_string& erase(size_type_pos= 0,size_type_count =npos);

一般的對於需要刪除字串開始和結尾的空格的**,經常為

1#include 

<

iostream

>

2#include 

<

string

>

3using

namespace

std;45

void

main()6

1#include 

<

iostream

>

2#include 

<

string

>

3using

namespace

std;45

void

main()6

結論1、只有第3種函式原形被呼叫。

2、湊巧的是,當 strtest.find_last_not_of(' ')返回 string::npos的時候,對其加1恰好不會引起任何的***。string::npos被定義為-1,所以當strtest.find_last_not_of(' ')返回-1的時候正好需要刪除0個字元。這種巧合儘管縮短了**,但是卻導致不易被理解.

3、size_type顯然是從1開始計數的,既如果第乙個字元就是目的字元,那麼find_***函式返回1。

C 中string erase函式的使用

文章出自 erase函式的原型如下 1 string erase size t pos 0,size t n npos 2 iterator erase iterator position 3 iterator erase iterator first,iterator last 也就是說有三種用法...

C 中string erase函式的使用

erase函式的原型如下 1 string erase size t pos 0,size t n npos 2 iterator erase iterator position 3 iterator erase iterator first,iterator last 也就是說有三種用法 1 er...

c 中string erase函式的使用

erase函式的原型如下 1 string erase size t pos 0,size t n npos 2 iterator erase iterator position 3 iterator erase iterator first,iterator last 也就是說有三種用法 1 er...