字符串进阶(string)用法
2019-10-12
2 min read
这是一个非常脑残的字符串。
对于一个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