最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

淺談C++中replace()方法

 更新時間:2015年11月10日 13:29:10   作者:glp_hit  
C++編程語言中的string應(yīng)用方式多樣化,每一種應(yīng)用方式都能幫助我們提實現(xiàn)特定的功能需求。在這里我們將會為大家詳細介紹一下其中一個比較重要的用法,有關(guān)C++ replace()函數(shù)的應(yīng)用方式,需要的朋友可以參考下

本文主要針對c++中常用replace函數(shù)用法給出九個樣例程序:

用法一: 

/*
 *用str替換指定字符串從起始位置pos開始長度為len的字符 
 *string& replace (size_t pos, size_t len, const string& str); 
 */ 
int main() 
{ 
 string line = "this@ is@ a test string!"; 
 line = line.replace(line.find("@"), 1, ""); //從第一個@位置替換第一個@為空 
 cout << line << endl; 
 return 0; 
} 

運行結(jié)果:

用法二: 

/*
 *用str替換 迭代器起始位置 和 結(jié)束位置 的字符 
 *string& replace (const_iterator i1, const_iterator i2, const string& str); 
 */ 
int main() 
{ 
 string line = "this@ is@ a test string!"; 
 line = line.replace(line.begin(), line.begin()+6, ""); //用str替換從begin位置開始的6個字符 
 cout << line << endl; 
 return 0; 
} 

運行結(jié)果:

用法三: 

/*
 *用substr的指定子串(給定起始位置和長度)替換從指定位置上的字符串 
 *string& replace (size_t pos, size_t len, const string& str, size_t subpos, size_t sublen); 
 */ 
int main() 
{ 
 string line = "this@ is@ a test string!"; 
 string substr = "12345"; 
 line = line.replace(0, 5, substr, substr.find("1"), 3); //用substr的指定子串(從1位置數(shù)共3個字符)替換從0到5位置上的line 
 cout << line << endl; 
 return 0; 
} 

運行結(jié)果:

用法四:string轉(zhuǎn)char*時編譯器可能會報出警告,不建議這樣做 

/*
 *用str替換從指定位置0開始長度為5的字符串 
 *string& replace(size_t pos, size_t len, const char* s); 
 */ 
int main() 
{ 
 string line = "this@ is@ a test string!"; 
 char* str = "12345"; 
 line = line.replace(0, 5, str); //用str替換從指定位置0開始長度為5的字符串 
 cout << line << endl; 
 return 0; 
} 


運行結(jié)果:

用法五:string轉(zhuǎn)char*時編譯器可能會報出警告,不建議這樣做 

/*
 *用str替換從指定迭代器位置的字符串 
 *string& replace (const_iterator i1, const_iterator i2, const char* s); 
 */ 
int main() 
{ 
 string line = "this@ is@ a test string!"; 
 char* str = "12345"; 
 line = line.replace(line.begin(), line.begin()+9, str); //用str替換從指定迭代器位置的字符串 
 cout << line << endl; 
 return 0; 
} 

運行結(jié)果:

用法六:string轉(zhuǎn)char*時編譯器可能會報出警告,不建議這樣做 

/*
 *用s的前n個字符替換從開始位置pos長度為len的字符串 
 *string& replace(size_t pos, size_t len, const char* s, size_t n); 
 */ 
int main() 
{ 
 string line = "this@ is@ a test string!"; 
 char* str = "12345"; 
 line = line.replace(0, 9, str, 4); //用str的前4個字符替換從0位置開始長度為9的字符串 
 cout << line << endl; 
 return 0; 
} 

運行結(jié)果:

用法七:string轉(zhuǎn)char*時編譯器可能會報出警告,不建議這樣做 

/*
 *用s的前n個字符替換指定迭代器位置(從i1到i2)的字符串 
 *string& replace (const_iterator i1, const_iterator i2, const char* s, size_t n); 
 */ 
int main() 
{ 
 string line = "this@ is@ a test string!"; 
 char* str = "12345"; 
 line = line.replace(line.begin(), line.begin()+9, str, 4); //用str的前4個字符替換指定迭代器位置的字符串 
 cout << line << endl; 
 return 0; 
} 

運行結(jié)果:

用法八: 

/* 

*用重復(fù)n次的c字符替換從指定位置pos長度為len的內(nèi)容 
 *string& replace (size_t pos, size_t len, size_t n, char c); 
 */ 
int main() 
{ 
 string line = "this@ is@ a test string!"; 
 char c = '1'; 
 line = line.replace(0, 9, 3, c); //用重復(fù)3次的c字符替換從指定位置0長度為9的內(nèi)容 
 cout << line << endl; 
 return 0; 
} 

運行結(jié)果:

用法九: 

/*
 *用重復(fù)n次的c字符替換從指定迭代器位置(從i1開始到結(jié)束)的內(nèi)容 
 *string& replace (const_iterator i1, const_iterator i2, size_t n, char c); 
 */ 
int main() 
{ 
 string line = "this@ is@ a test string!"; 
 char c = '1'; 
 line = line.replace(line.begin(), line.begin()+9, 3, c); //用重復(fù)3次的c字符替換從指定迭代器位置的內(nèi)容 
 cout << line << endl; 
 return 0; 
} 


運行結(jié)果:

注:所有使用迭代器類型的參數(shù)不限于string類型,可以為vector、list等其他類型迭代器。

相關(guān)文章

  • C++實現(xiàn)簡單的HTTP服務(wù)器

    C++實現(xiàn)簡單的HTTP服務(wù)器

    這篇文章主要為大家詳細介紹了C++實現(xiàn)簡單的HTTP服務(wù)器的相關(guān)資料,感興趣的朋友可以參考下
    2016-05-05
  • C++簡明分析inline函數(shù)的使用

    C++簡明分析inline函數(shù)的使用

    inline是C++關(guān)鍵字,在函數(shù)聲明或定義中,函數(shù)返回類型前加上關(guān)鍵字inline,即可以把函數(shù)指定為內(nèi)聯(lián)函數(shù)。這樣可以解決一些頻繁調(diào)用的函數(shù)大量消耗棧空間(棧內(nèi)存)的問題
    2022-07-07
  • 深入理解c語言數(shù)組

    深入理解c語言數(shù)組

    這篇文章主要介紹了c語言數(shù)組,有需要的朋友可以參考一下
    2013-12-12
  • 利用C語言編輯畫圖程序的實現(xiàn)方法(推薦)

    利用C語言編輯畫圖程序的實現(xiàn)方法(推薦)

    下面小編就為大家?guī)硪黄肅語言編輯畫圖程序的實現(xiàn)方法(推薦)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-06-06
  • 基于Qt的TCP實現(xiàn)通信

    基于Qt的TCP實現(xiàn)通信

    這篇文章主要為大家詳細介紹了基于Qt的TCP實現(xiàn)通信,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-08-08
  • c語言如何設(shè)置隨機數(shù)及逐行解析

    c語言如何設(shè)置隨機數(shù)及逐行解析

    在C語言中,rand()函數(shù)可以用來產(chǎn)生隨機數(shù),但是這不是真真意義上的隨機數(shù),是一個偽隨機數(shù),下面這篇文章主要給大家介紹了關(guān)于c語言如何設(shè)置隨機數(shù)及逐行解析的相關(guān)資料,需要的朋友可以參考下
    2022-11-11
  • C++學(xué)習(xí)之多態(tài)的使用詳解

    C++學(xué)習(xí)之多態(tài)的使用詳解

    這篇文章主要為大家詳細介紹了C++中多態(tài)的機制以及使用,文中的示例代碼講解詳細,對我們學(xué)習(xí)C++有一定的幫助,感興趣的可以了解一下
    2022-06-06
  • c語言中數(shù)組名a和&a詳細介紹

    c語言中數(shù)組名a和&a詳細介紹

    其實這兩個東西挺難理解的,應(yīng)該也沒有那么重要,了解一下好了,主要還是要多多理解數(shù)組指針的運算
    2013-08-08
  • C語言 二級指針詳解及示例代碼

    C語言 二級指針詳解及示例代碼

    本文主要介紹C語言 二級指針,這里整理了C語言中二級指針的基礎(chǔ)資料并附有示例代碼和實現(xiàn)結(jié)果,幫助大家學(xué)習(xí)理解相關(guān)知識,有學(xué)習(xí)的朋友可以參考下
    2016-08-08
  • C語言 完整游戲項目坦克大戰(zhàn)詳細代碼

    C語言 完整游戲項目坦克大戰(zhàn)詳細代碼

    《坦克大戰(zhàn)》以二戰(zhàn)坦克為題材,既保留了射擊類游戲的操作性,也改進了射擊類游戲太過于復(fù)雜難玩的高門檻特點,集休閑與競技于一身。經(jīng)典再度襲來,流暢的畫面,瘋狂的戰(zhàn)斗,讓玩家再次進入瘋狂坦克的世界。玩家的目標(biāo)是控制坦克躲避危險,消滅掉所有的敵人即可進入下一關(guān)
    2021-11-11

最新評論

庐江县| 开鲁县| 灯塔市| 鹤壁市| 无为县| 新平| 昌江| 司法| 嘉鱼县| 正安县| 马鞍山市| 宜兴市| 华宁县| 枣庄市| 石狮市| 庆阳市| 扎赉特旗| 法库县| 翁源县| 和林格尔县| 德阳市| 邮箱| 铜陵市| 吉木萨尔县| 周至县| 黄梅县| 安福县| 肥城市| 宜川县| 辛集市| 海口市| 山丹县| 历史| 九寨沟县| 冕宁县| 山阴县| 渭南市| 大庆市| 新乐市| 外汇| 牟定县|