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

C++中replace()?函數(shù)的基本用法

 更新時間:2021年11月28日 12:54:07   作者:cai_niaocainiao  
今天就跟大家聊聊有關(guān)C++中replace()函數(shù)的作用是什么,可能很多人都不太了解,為了讓大家更加了解,這篇文章主要給大家介紹了關(guān)于C++中replace()?函數(shù)的基本用法,需要的朋友可以參考下

replace算法:

replace函數(shù)包含于頭文件#include<string>中。

泛型算法replace把隊列中與給定值相等的所有值替換為另一個值,整個隊列都被掃描,即此算法的各個版本都在

線性時間內(nèi)執(zhí)行———其復雜度為O(n)。

即replace的執(zhí)行要遍歷由區(qū)間[frist,last)限定的整個隊列,以把old_value替換成new_value。

下面說下replace()的九種用法:(編譯軟件dev5.4.0)

用法一:用str替換指定字符串從起始位置pos開始長度為len的字符

string&?replace?(size_t?pos,?size_t?len,?const?string&?str);?

代碼如下:

#include<iostream>
#include<string>
using namespace std;
int main()
{
	string str = "he is@ a@ good boy";
	str=str.replace(str.find("a"),2,"#");  //從第一個a位置開始的兩個字符替換成#
	cout<<str<<endl; 
	return 0;
}

結(jié)果如下:

用法二:?用str替換?迭代器起始位置?和?結(jié)束位置?的字符

string&?replace?(const_iterator?i1,?const_iterator?i2,?const?string&?str);

#include<iostream>
#include<string>
using namespace std;
int main()
{
	string str = "he is@ a@ good boy";
	 str=str.replace(str.begin(),str.begin()+5,"#"); //用#替換從begin位置開始的5個字符
	 cout<<str<<endl;
	 return 0; 
}

結(jié)果如下:

用法三:?用substr的指定子串(給定起始位置和長度)替換從指定位置上的字符串?

string&?replace?(size_t?pos,?size_t?len,?const?string&?str,?size_t?subpos,?size_t?sublen);

#include<iostream>
#include<string>
using namespace std;
int main()
{
	string str = "he is@ a@ good boy";
	 str=str.replace(str.begin(),str.begin()+5,"#"); //用#替換從begin位置開始的5個字符
	 cout<<str<<endl;
	 return 0; 
}

結(jié)果如下:

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

用str替換從指定位置0開始長度為5的字符串? ? ? ? ? ? ? ?

string&?replace(size_t?pos,?size_t?len,?const?char*?s);

代碼如下:

#include<iostream>
#include<string>
using namespace std;
int main()
{
	string str = "he is@ a@ good boy";
	char * str1 = "12345";
	str=str.replace(0,5,str1);   //用str替換從指定位置開始長度為5的字符串
	cout<<str<<endl;
	return 0; 
}

結(jié)果如下:

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

用str替換從指定迭代器位置的字符串? ? ? ? ? ? ? ?

string&?replace?(const_iterator?i1,?const_iterator?i2,?const?char*?s);?

代碼如下:

#include<iostream>
#include<string>
using namespace std;
int main()
{
	string str = "he is@ a@ good boy";
	char * str1 = "12345";
	str=str.replace(str.begin(),str.begin()+6,str1);   //用str替換從指定迭代器位置的字符串
	cout<<str<<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);??

代碼如下:

#include<iostream>
#include<string>
using namespace std;
int main()
{
	string str = "he is@ a@ good boy";
	char * str1 = "12345";
	str=str.replace(0,6,str1,4);   //用str1的前4個字符串替換從位置0~6的字符串
	cout<<str<<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);?

代碼如下:

#include<iostream>
#include<string>
using namespace std;
int main()
{
	string str = "he is@ a@ good boy";
	char * str1 = "12345";
	str = str.replace(str.begin(),str.begin()+6,str1,4);   //用str1的前4個字符串替換從位置0~6的字符串
	cout<<str<<endl;
	return 0; 
}

結(jié)果如下:

用法八:?用重復n次的c字符替換從指定位置pos長度為len的內(nèi)容

string&?replace?(size_t?pos,?size_t?len,?size_t?n,?char?c);?

代碼如下:

#include<iostream>
#include<string>
using namespace std;
int main()
{
	string str = "he is@ a@ good boy";
	char  str1 = '#';
	str = str.replace(0,6,3,str1);   //用重復3次的str1字符替換的替換從位置0~6的字符串
	cout<<str<<endl;
	return 0; 
}

結(jié)果如下:

用法九:?用重復n次的c字符替換從指定迭代器位置(從i1開始到結(jié)束)的內(nèi)容?

string&?replace?(const_iterator?i1,?const_iterator?i2,?size_t?n,?char?c);?

代碼如下:

#include<iostream>
#include<string>
using namespace std;
int main()
{
	string str = "he is@ a@ good boy";
	char  str1 = '#';
	str = str.replace(str.begin(),str.begin()+6,3,str1);   //用重復3次的str1字符替換的替換從指定迭代器位置的內(nèi)容 
	cout<<str<<endl;
	return 0; 
}

結(jié)果如下:

總結(jié)

到此這篇關(guān)于C++中replace()函數(shù)基本用法的文章就介紹到這了,更多相關(guān)C++?replace()?函數(shù)用法內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • win32使用openfilename瀏覽文件窗口示例

    win32使用openfilename瀏覽文件窗口示例

    這篇文章主要介紹了使用win32 API打開瀏覽文件窗口,使用OPENFILENAME結(jié)構(gòu)體來實現(xiàn)這個功能,需要的朋友可以參考下
    2014-02-02
  • C語言單鏈表貪吃蛇小游戲

    C語言單鏈表貪吃蛇小游戲

    這篇文章主要為大家詳細介紹了C語言單鏈表貪吃蛇小游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-02-02
  • C語言對堆排序一個算法思路和實現(xiàn)代碼

    C語言對堆排序一個算法思路和實現(xiàn)代碼

    這篇文章主要介紹了C語言對堆排序一個算法思路和實現(xiàn)代碼,堆排序是一種樹形選擇排序,是對直接選擇排序的有效改進,需要的朋友可以參考下
    2014-06-06
  • c++訪問私有private成員變量的常用方法

    c++訪問私有private成員變量的常用方法

    這篇文章主要介紹了c++訪問私有private成員變量的常用方法,需要的朋友可以參考下
    2020-08-08
  • Qt實現(xiàn)帶字數(shù)限制的文字輸入框

    Qt實現(xiàn)帶字數(shù)限制的文字輸入框

    這篇文章介紹了Qt實現(xiàn)帶字數(shù)限制文字輸入框的方法,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-04-04
  • c++ static詳細使用分析

    c++ static詳細使用分析

    在C++中,static是一個關(guān)鍵字,用于聲明靜態(tài)成員、靜態(tài)局部變量以及靜態(tài)函數(shù),這篇文章主要介紹了c++ static詳細分析,需要的朋友可以參考下
    2024-05-05
  • Matlab實現(xiàn)貪吃蛇小游戲的示例代碼

    Matlab實現(xiàn)貪吃蛇小游戲的示例代碼

    這篇文章主要為大家詳細介紹了如何利用Matlab實現(xiàn)貪吃蛇小游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • C++ 花括號{}初始化小結(jié)

    C++ 花括號{}初始化小結(jié)

    在C++11及以后的版本中,花括號{}語法在不同語境下有不同的用法,本文就詳細的介紹C++ 花括號{}初始化,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-06-06
  • C語言中結(jié)構(gòu)體實例解析

    C語言中結(jié)構(gòu)體實例解析

    大家好,本篇文章主要講的是C語言中結(jié)構(gòu)體實例解析,感興趣的同學趕快來看一看吧,對你有幫助的話記得收藏一下
    2022-02-02
  • C語言實現(xiàn)放煙花的程序

    C語言實現(xiàn)放煙花的程序

    這篇文章主要為大家詳細介紹了C語言實現(xiàn)放煙花的程序,有音樂播放,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-02-02

最新評論

房产| 临泽县| 卢氏县| 丰城市| 林西县| 宜兴市| 黄陵县| 新邵县| 乌苏市| 克东县| 西畴县| 凤台县| 凤城市| 海阳市| 鹤岗市| 佛坪县| 台江县| 徐闻县| 化隆| 庄河市| 嘉义县| 平乡县| 雅安市| 芜湖县| 桦南县| 登封市| 抚顺县| 将乐县| 兰西县| 德兴市| 开江县| 西乌| 班玛县| 来安县| 延长县| 西丰县| 锦屏县| 延寿县| 彰武县| 观塘区| 金堂县|