参考了 cppreference
1. 第一步,引入库
#include <string>
1.1 参数说明
index:起始下标(从0开始)
len:长度
count:数量
ch:字符
2. 初始化
string str="abaa";
cout<<str<<endl; // 输出 abaa
3. 获取字符串元素
用[]或者at(int index)都可以
string str="abaa";
char a = str[2]; // a: a
char b = str.at(2); // b: a
4. 字符串长度
string s = "abaazzzzz";
cout<<s3.length()<<endl; // 输出9
cout<<s3.size()<<endl; // 输出9
5. 插入
- append() 在字符串的末尾添加字符或字符串
string str2 = "hello";
string str="abaa";
string s1 = str.append(str2); // abaahello
str = "abaa";
string s2 = str.append(str2, 3, 2); // abaalo,在str末尾添加从str2的第3个字符(从0开始)开始的2个字符
str = "abaa";
string s3 = str.append(5, 'z'); // abaazzzzz,在str末尾添加5个'z'
- insert()
a. insert(int index,int count, char ch)
string s = "xmplr";
s.insert(0,2,'A');
cout << s << '\n'; // AAxmplr
b. insert(int index, const char* s)
string s = "xmplr";
s.insert(2,"eEA");
cout << s << '\n'; // xmeEAplr
6.获取子串
substr()
string a = "0123456789abcdefghij";
string sub1 = a.substr(10);
cout << sub1 << '\n'; // abcdefghij
string sub2 = a.substr(5, 3); //返回从从pos处开始的count个字符,若count超出字符串长度,则返回后面全部
cout << sub2 << '\n'; // 567
7.替换字符
- replace(int index, int len, const char* str)
string s = "xmplr";
s.replace(2,3,"AA");
cout << s << '\n'; // xmAA
- replace(int index, int len, int count, char ch)
string s = "xmplr";
s.replace(2,3,2,'A');
cout << s << '\n';
8.类型转换
- 字符串string转化为int类
stoi()
string str1 = "45";
int myint1 = stoi(str1); // 45
string str2 = "-45";
int myint2 = stoi(str2); // -45
cout<<myint2;
- int转化为string
to_string()
int myint1 = 456;
string bo = to_string(myint1); // "456"
double mydb = 456.12050;
string bo = to_string(mydb);
cout<<bo<<endl; // "456.120500"