[C++]-string类的常用操作

代码

#include<iostream>
#include<string>
#include<algorithm>
using namespace std;

int main()
{
	/* ----获取字符串---- */ 
	string s1;
	getline(cin, s1); // getline函数获取一行字符,遇到回车结束 
	cout<<s1<<endl; 
	cout<<endl; 

	string s2;
	cin>>s2; // cin获取一个单词,遇到空格就会结束
	cout<<s2<<endl;
	cout<<endl;
	
	/* ---- +=操作符---- */ 
	string s3 = "hello";
	s3 += " word"; // +=可以拼接字符串 
	cout<<s3<<endl;
	cout<<endl; 
	
	/* ----sort排序---- */ 
	string s4 = "cbdeafghi";
	sort(s4.begin(), s4.end()); // sort可以对string中的字符排序 
	cout<<s4<<endl;
	cout<<endl; 
	
	/* ----插入删除---- */ 
	string s5 = "12345";
	s5.insert(s5.begin()+2, '0'); // 在第2个索引位置插入字符0,原本该位置及之后的字符后移 
	cout<<s5<<endl; 
	s5.erase(s5.begin()+2); // 删除索引2位置的字符 
	cout<<s5<<endl;  
	cout<<endl; 
	
	/* ----字符串切片---- */ 
	string s6 = "0123456789", s; 
	s = s6.substr(5, 4); // 从索引5开始(包括第5个)获取连续的4个字符 
	cout<<s<<endl;
	s = s6.substr(5, -1); // 直接从第5个索引位置起截取所有字符 
	cout<<s<<endl;
	s = s6.substr(5, 20); // 当第二个参数超出索引值,也只取到最后就结束 
	cout<<s<<endl;
	cout<<endl; 
	
	/* ----遍历方式---- */ 
	string s7 = "1234567";
	for(int i=0; i<s7.length(); i++) // 普通的for循环 
		cout<<s7[i]<<" ";
	cout<<endl; 
	for(string::iterator it=s7.begin(); it!=s7.end(); ++it)// 使用迭代器
		cout<<*it<<" ";
	cout<<endl;
}

运行结果

原文地址:https://www.cnblogs.com/xxmmqg/p/13405164.html