string类型可以大大方便对字符串的处理
1.string的定义
string str;
string str="abcd";
2.string中内容的访问
(1)可以像字符数组一样进行访问
printf("%c",str[i]);
(2)如果想读入和输出整个字符串,则只能用cin和cout
#include<cstdio>
#include<string>
using namespace std;
int main()
{
string str;
cin>>str; //遇到空格自动停止
cout<<str;
return 0;
}
getline(cin,str); //读入换行符\n才停止,读入一整行
(3)通过迭代器进行访问
string::iterator it; //不需要参数
printf("%c",*(it+9) ); //这种用法也是可以的
3.使用函数解析
str3=str2+str1; //加法,将str2与str1进行拼接赋值给str3
if(str1<str2)printf("ok\n"); //可以进行比较大小==,!=,<,<=,>,>=比较的规则是字典序
str.size(); //length返回string的长度
st.insert(pos,string); //再pos号位置上插入字符串string
st.insert(it,it2,it3); //用来表示串[it2,it3)将被插再it的位置上
st.erase(it); //删除单个元素,it为迭代器
st.erase(first,last); //删除地址为[first,last)
st.erase(pos,length); //删除pos为起点的,length为长度的字符个数
st.clear(); //清空
st.substr(pos,len); //返回从pos号位开始、长度位len的字串
string::npos //常数本身是-1
st.find(str2,pos); //从pos位开始进行分配str2
st.find(str2); //返回str中第一次出现的位置
st.replace(pos,len,str2); //把st从pos号位置开始、长度为len的字串替换为str2