basic_string::compare
如果所比較的兩個string 相等,則返回0; 操作string 大於引數string,返回
正數;操作string 小於引數string,返回負數。
(1) 比較操作string 與 _str 或c-string _ptr
int compare( const basic _ string& _str ) const;
int compare( const value _ type* _ptr ) const;
int com = s.compare ( sp );
(2) 比較操作string 中 _pos1 ( 下標)開始的 _num1 個字元 與 string _str
比較操作string 中 _pos1 ( 下標)開始的 _num1 個字元 與 c-string _ptr
比較操作string 中 pos1 ( 下標)開始的 num1 個字元 與 str 中 off ( 下標)開始 count 個字
符 int compare( size _ type _pos1 , size _ type _num1 , const basic _ string& _str );
int compare( size _ type _pos1 , size _ type _num1 , const value _ type* _ptr ) const;
int compare( size _ type _pos1 , size _ type _num1 , const basic _ string& _str ,
size _ type _off , size _ type _count );
int com1 = s.compare ( 2 , 3 , sp );
int com2 = s.compare ( 2 , 3 , c );
int com3 = s.compare ( 1 , 3 , cs , 3 ,1 );
basic_string::erase
刪除string 中的乙個或幾個元素。前兩個成員函式,返回要被刪除的子串的下
乙個元素的iterator; 第三個函式,返回刪除後的string 的引用。
(1) 刪除string 中從 _ first 到 _ last 的字元
iterator erase( iterator _first , iterator _last );
basic_string
::iterator s_iter;
s_iter = s.erase ( s.begin ( ) + 3 , s.end ( ) - 1 ); // s_iter=s.end( )
(2) 刪除string 中 _it 所指的字元
iterator erase( iterator _it );
s_iter = s.erase ( s.begin ( ) + 5 );
(3) 刪除string 中從 _pos ( 下標)開始的 _count 個字元
basic _ string& erase( size _ type _pos = 0, size _ type _count = npos );
str = s.erase ( 6 , 8 ); // str 也是 string
basic_string::find
尋找給定的string。返回找到的第乙個string 下標值;如果沒找到則返回npos。
(1) 找乙個character _ch 。(預設從頭找)
size _ type find( value _ type _ch , size _ type _off = 0 ) const;
string s ( "hello everyone" );
basic_string
::size_type index1, index2;
static const basic_string
::size_type npos = -1;
index1 = s.find ( "e" , 3 ); // index1=8, 不是 6
index2 = s.find ( "x" ); // index2=-1
if ( indexch1a != npos ) cout <
<< endl;
else cout << "the character 'e' was not found in str1 ." << endl;
(2) 找乙個c-string。(預設從頭找)
size _ type find( const value _ type* _ptr , size _ type _off = 0 ) const;
string s ( "let me make this perfectly clear." );
basic_string
::size_type index;
const char *c = "perfect";
index = s.find ( c , 5 ); // index=17
(3) 找乙個string。(預設從頭找)
size _ type find( const basic _ string& _str , size _ type _off = 0 ) const;
string s ( "clearly this perfectly unclear." );
basic_string
::size_type index;
string sta ( "clear" );
index = s.find ( sta , 5 ); // index=24
其實string本質上跟vector
差不多
c 中string類的用法
前言 string類的常用方法有哪些?string查詢替換 分割字串 比較 擷取 型別轉換 排序等功能都提供了強大的處理函式,可以代替字元陣列來使用。熟練掌握好string的各種使用方法,能極大的提高程式設計效率哦 1.定義和構造初始化 string 提供了很多建構函式,可以以多種方式來初始化str...
標準C 中string類的用法總結
相信使用過mfc程式設計的朋友對cstring這個類的印象應該非常深刻吧?的確,mfc中的cstring類使用起來真的非常的方便好用。但是如果離開了mfc框架,還有沒有這樣使用起來非常方便的類呢?答案是肯定的。也許有人會說,即使不用mfc框架,也可以想辦法使用mfc中的api,具體的操作方法在本文最...
標準C 中的string類的用法總結
原文章 相信使用過mfc程式設計的朋友對cstring這個類的印象應該非常深刻吧?的確,mfc中的cstring類使用起來真的非常的方便好用。但是如果離開了mfc框架,還有沒有這樣使用起來非常方便的類呢?答案是肯定的。也許有人會說,即使不用mfc框架,也可以想辦法使用mfc中的api,具體的操作方法...