1.String对象的创建 :1)、2)
1)创建空的String对象
s string s;
2)创建有内容的String对象ss
内容为“hello”
string ss=“hello”;
2.String元素的增添 :1)、2)
1)向String尾部增加字符串的两种方法
可直接采用‘+’操作符来添加
可采用append()方法来添加
2)向String对象中插入新的字符
可采用insert()方法来添加
3.String元素的删除 :1)、2)
1) 删除整个字符串的两种方法
直接把字符串赋值为空
利用clear()函数删除
2)删除字符串中的一段子串或目标字符
利用erase()方法删除
4.String元素的修改
利用replace()方法实现字符串的修改
5.String元素的查询
利用find()方法实现字符或字符串的查找
6.String元素的比较
利用compare()方法实现字字符串的比较:
【比较规则】:
按照ASCLL码表的顺序对字符串从前到后依次比较 字符顺序大的那个字符串较大
7.String常用函数总结
getline(cin,a); // 输入一行字符串
getline(cin,a,c); // 输入到字符c为止的字符串
a+b; // 将字符串b连接到字符串a之后
a.begin(); // 返回字符串a的起始地址
a.end(); // 返回字符串a的结束地址
a.size(); // 返回字符串a的长度
a.length(); // 返回字符串a的长度
a.clear; // 清空字符串a
a.empty(); // 字符串a为空返回true;否则返回false
a.compare(b); // 比较字符串a,b;a大,返回1;b大,返回-1;相等,返回0
reverse(a.begin(),a.end()); // 将字符串a从首到尾反向排列
printf(a.c_str()); // 用c_str()方法将字符串a用printf输出
a.erase(p); // 清除地址p的一个字符
a.erase(p,n); // 清除从地址p开始的n个字符
a.erase(p,q); // 清除从地址p开始到地址q结束的字符
a.insert(n,s); // 在字符串a第n个位置插入字符串s
a.insert(n,s,m); // 在字符串a第n个位置插入字符串s的前m个字符
a.insert(n,m,c); // 在字符串a第n个位置插入m个字符c
a.replace(m,n,s); // 将字符串a第m个位置开始往后的n个字符替换为字符串s
a.replace(m,n,s,x,y); // 替换为字符串s中第x个位置开始往后的y个字符
a.replace(m,n,s,n); // 替换为字符串s的前n个字符
a.replace(m,n,x,c); // 替换为x个字符c
a.find(c); // 返回a中第一次出现字符c的位置
a.find(s); // 返回a中第一次出现字符串s的位置
a.rfind(c); // 返回a中最后一次出现字符c的位置
a.rfind(s); // 返回a中最后一次出现字符串s的位置
stoi(a); // 字符串a转换为int类型
stol(a); // 字符串a转换为long int类型
stoul(a); // 字符串a转换为unsigned long int类型
stoll(a); // 字符串a转换为long long int类型
stoul(a); // 字符串a转换为unsigned long long int类型
stof(a); // 字符串a转换为float类型
stod(a); // 字符串a转换为double类型
stold(a); // 字符串a转换为long double类型