91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C++中常用的string類字符串函數有哪些

發布時間:2021-11-26 15:17:30 來源:億速云 閱讀:225 作者:iii 欄目:大數據

這篇文章主要介紹“C++中常用的string類字符串函數有哪些”,在日常操作中,相信很多人在C++中常用的string類字符串函數有哪些問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”C++中常用的string類字符串函數有哪些”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

常用的字符串函數包括:復制、拼接、查找字符、截短、反轉、大小寫轉換等。使用這些字符串函數,能夠輕松的解決很多字符串操作問題,并且使你的代碼變得更加簡潔可讀。

1 拼接字符串append()

要將兩個字符串拼接在一起,可以使用運算符+=,也可以使用成員函數append():

#include<iostream>#include<string>using namespace std;int main(){
   
   
   
	string s1("I love");
	string s2(">);//方法1:+=
	s1+=s2;
	cout<<s1<<endl;//方法2:append()
	string s3(" I love you very much!");
	s1.append(s3);
	cout<<s1<<endl;return 0;}

2 查找字符或者子字符串find()

string類的成員函數find,可以用來查找字符串中的字符和子字符串,比如:

//從索引為n的位置開始,查找字符串s1中的子串s2,并返回給pos。(其中,s2可以是字符也可以是子字符串)int pos=s1.find(s2,n);
#include<iostream>#include<string>using namespace std;int main(){
   
   
   
	string s1("I love you! and do you love me?");
	cout<<"s1:"<<s1<<endl;//1.從最開始處開始搜索,返回字符串love第一次出現的位置 
	size_t position= s1.find("love",0);if(position!=string::npos) //string:npos實際值為-1,表示沒有找到要搜索的元素
		cout<<"字符串love第一次出現的位置:"<<position<<endl;else
		cout<<"字符串love沒有被找到"<<endl; 
		
	//2.返回所有子字符串的位置
	cout<<"字符串love出現的所有位置:"; 
	size_t all_pos=s1.find("love",0);while(all_pos!=string::npos){
   
   
   
		cout<<all_pos<<" ";
		size_t  search_pos=all_pos+1;
		all_pos=s1.find("love",search_pos); //返回子字符串出現的位置 } 
	return 0;}

3 截短字符串erase()

(1)給定偏移位置(刪除的起始位置)和要刪除的字符個數。

string s1 = "I love you very much!"s1.erase(2,4); //從索引號2開始,刪除4個字符,即刪掉love。

(2)在給定指向字符的迭代器時刪除該字符

//刪除字符串s1中的所有的字符'I'#include<iostream>#include<string>#include<algorithm>using namespace std;int main(){
   
   
   
	string s1("I love you! and do you love me?");
	string::iterator pos = find(s1.begin(),s1.end(),'I'); //找到字符'I'的位置給迭代器if(pos!=s1.end())
		s1.erase(pos); //依次刪除迭代器指向的字符
	cout<<s1<<endl;return 0;}

(3)在給定兩個迭代器指定的范圍時,刪除該范圍內的字符

s1.erase(s1.begin(),s1.end());

4 字符串反轉reverse()

所謂反轉,就是首位倒序存放。比如要判斷某字符串是否是回文串,就可以將其反轉,再與原來的字符串進行比較。

#include<iostream>#include<string>#include<algorithm>using namespace std;int main(){
   
   
   
	string s1("I love you!");reverse(s1.begin(),s1.end());  //將s1進行反轉
	cout<<s1;return 0;}

5 大小寫轉換transform()

//1.將字符串s1轉換為大寫transform(s1.begin(),s1.end(),s1.begin(),toupper);//2.將字符串s1轉化為小寫transform(s1.begin(),s1.end(),s1.begin(),tolower);

到此,關于“C++中常用的string類字符串函數有哪些”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

格尔木市| 东平县| 五华县| 河东区| 滨州市| 礼泉县| 富源县| 延津县| 潮州市| 泗水县| 木里| 济南市| 南昌县| 大名县| 双柏县| 长葛市| 日土县| 镇江市| 惠东县| 石棉县| 武山县| 建瓯市| 且末县| 北京市| 承德市| 铁岭市| 伊春市| 竹溪县| 兴城市| 扶余县| 邹平县| 寿阳县| 长沙市| 射阳县| 尼勒克县| 平陆县| 金堂县| 永定县| 肃北| 濉溪县| 五家渠市|