字符串进阶(string)用法

这是一个非常脑残的字符串。
对于一个C大爷选手,还是挺不习惯这个的。

1.头文件

#include <cstring>

2.声明

string s;

相当于一个不定长的char。

3.使用

基本操作用法

cin>>s; //输入
cout<<s<<endl; //输出

进阶用法

getline(cin,s); //输入一整行  但是\n会被记录 
s.length()  一个值,字符串长度
s=s+t; //把t插入在s后面
s.substr(1,3)  一串字符,从s的第1位到第3位
s.find_first_of("aaa")  一个值,表示第一个存在aaa的位置
s.find_first_of("aaa",10)  一个值,表示10位之后第一个存在aaa的位置
s.find("aaa")  一个值,存在aaa的位置
s.erase(5,4); //从第五位开始连续删除4个字符 
s.replace(5,4,"233"); //从第五位吞掉往后的4个字符,加上233

4.其他

strcmp(a,b)  一个值,字典序比较,a大输出正数  一样大输出0  b大输出负数 
strcpy(a,b); //把b字符串覆盖给a 
strlen(a+0); //从a[0]开始查找有多少字符 
memcpy(a,b,sizeof(char)*100); //把整个b的前100位字符传送给a 

关于字符

'0'=48
'a'=97