代码
#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;
}
运行结果