C++string

录入:

想要包括空格一起录进来

getline(cin,s);

如果在录入字符串之前有录进去‘\n’  那就得小心了

回车换行会存在 缓存区内导致只录进去了一个回车换行

cin.ignore();

getline(cin,s);

这样回车换行就不会被读入了

 插入删除:

#include<string>
#include<iostream>
using namespace std;
int main()
{
    string s;
    s="qq549616079";
    s.insert(s.find("5"),"haha");
    cout<<s;
}

运行结果:qqhaha549616079

插入是在position的前面插入

#include<string>
#include<iostream>
using namespace std;
int main()
{
    string s;
    s="qq5496016079";
    s.erase(0,3);
    cout<<s;
}

运行结果:496016079

s.erase(int begin,int end);

删除这段区间[begin,end);

包括begin,但是不包括end;

如果没写end参数

s.erase(int begin);

从begin开始后面的全部删除了(包括begin);

查找:

s.find(str);

从前面往后找

返回第一个匹配的的下标

s.rfind(str);

从后往前找

如果查找不成功返回 string::string::npos

一般情况下写成if(s.find(str)!=-1) 也行;

猜你喜欢

转载自blog.csdn.net/qq_40458569/article/details/81392440