【OJ】STL——String的用法

在回顾库里的string时,get到了很多原来不知道的神奇用法,写出来分享一下,也方便自己的查看,以下都是我觉得在做题中非常使用的,更全面的可以去官方的string全部用法查看


1、基础用法

字符串可以直接打印、字符串的长度、字符串的访问

int main()
{
    string s = "xiao xuan zi";
    cout << s << endl;
    cout << *(s.begin()+3 )<< endl;
    cout << s[1] << endl;
    cout << s.size() << endl;
    cout << s.length() << endl;

    system("pause");
    return 0;
}

这里写图片描述
字符串相加

int main()
{
    string name("John");
    string family("Smith");
    name += " abc ";         // c-string
    name += family;         // string
    name += '.';           // character

    cout << name << endl;
    system("pause");
    return 0;
}

这里写图片描述

2、其它用法

1)find查找:
int find(char c, int pos = 0) const;//从pos开始查找字符c在当前字符串的位置
int find(const char *s, int pos = 0) const;//从pos开始查找字符串s在当前串中的位置
int find(const char *s, int pos, int n) const;//从pos开始查找字符串s中前n个字符在当前串中的位置
int find(const string &s, int pos = 0) const;//从pos开始查找字符串s在当前串中的位置
//查找成功时返回所在位置,注意找不到失败时返回string::npos的值

这里写图片描述

2)substr 子字符串

这里写图片描述这里写图片描述

3)insert
string &insert(int pos, const char *s);
string &insert(int pos, const char *s, int n);
string &insert(int pos, const string &s);
string &insert(int pos, const string &s, int pos1, int n);
//前4个函数在pos位置插入字符串s中pos1开始的前n个字符
string &insert(int pos, int n, char c);//此函数在pos处插入n个字符c
iterator insert(iterator it, char c);//在it处插入字符c,返回插入后迭代器的位置
void insert(iterator it, const_iterator first,const_iterator last);//在it处插入[first,last)之间的字符
void insert(iterator it, int n, char c);//在it处插入n个字符c

这里写图片描述

猜你喜欢

转载自blog.csdn.net/lindaxym/article/details/80420383