string容器

string构造函数

  • string();         //创建一个空字符串
    string str;
  • string(const char* s);     //使用字符串s初始化
    string str("hello");
  • string(const string& str);        //使用string对象初始化另一个string对象
    string str(s1);
  • string(int n,char c);         //使用n个字符c初始化
    string str(3,'a');

    string赋值

  • string& operator=(const char*s);         //char*类型字符串赋值给当前的字符串
    string str = "hello";
  • string& operator=(const string &s);       //把字符串s赋给当前的字符串 
    string str = str1;
  • string& operator=(char c);            //字符赋值给当前的字符串 
    string str = 'a';
  • string& assign(const char* s);           //把字符串s赋给当前的字符串 
    string str;
    str.assign("hello");
  • string& assign(const char* s,int n);             //把字符串s的前n个字符赋给当前的字符串 
    string str;
    str.assign("hello",2);
  • string& assign(const string& s);             //把字符串s赋给当前字符串 
    string str;
    str.assign(s1);
  • string& assign(int n,char c);         //用n个字符c赋给当前字符串
    string str;
    str.assign(5,'a');

    string拼接

  • string& operator+=(const char* str);            //重载+=操作符 
    str += "abc";
  • string& operator+=(const char c);                     //重载+=操作符 
    str += 'a';
  • string& operator+=(const string& str);            //重载+=操作符 
    str1 += str2;
  • string& append(const char *s);                  //把字符串s连接到当前字符串结尾 
    str1.append("abc");
  • string& append(const char *s,int n);             //把字符串s的前n个字符连接到当前字符串结尾
    str1.append("abc",2);
    string& append(const string &s);                  //同operator+=(const string&str) 
    str1.append(str2);
  • string& append(const string &s, int pos, int n);      //字符串s中从pos开始的n个字符连接到字符串结尾
    str1.append("abc",0,2);

    string查找和替换

  • int find(const string& str, int pos = 0)const;          //查找str第一次出现位置,从pos开始查找 
  • int find(const char* s, int pos=0)const;            //查找s第一次出现位置,从pos开始查找 
  • int find(const char* s, int pos, int n)const;                //从pos位置查找s的前n个字符第一次位置 
  • int find(const char c, int pos =0)const;              //查找字符c第一次出现位置 
  • int rfind(const string& str, int pos = npos)const;          //查找str最后一次位置,从pos开始查找 
  • int rfind(const char* s, int pos =npos)const;           //查找s最后一次出现位置,从pos开始查找 
  • int rfind(const char* s, int pos, int n)const;              //从pos查找s的前n个字符最后一次位置 
  • int rfind(const char c, int pos=0)const;              //查找字符c最后一次出现位置 
  • string& replace(int pos, int n, const string& str);              //替换从pos开始n个字符为字符串str 
  • string& replace(int pos, int n,const char* s);            //替换从pos开始的n个字符为字符串s

string比较

  • int compare(const string &s)const;                  //与字符串s比较 
  • int compare(const char *s)const;          //与字符串s比较

string获取字符

  • char& operator[](int n);          //通过[]方式取字符 
  • char& at(int n);           //通过at方法获取字符
    for(int i = 0;i < str.size();i++){
        cout << str.at(i) << endl ;
    }

string插入和删除

  • string& insert(int pos, const char* s);        //插入字符串 
  • string& insert(int pos, const string& str);            //插入字符串 
  • string& insert(int pos, int n, char c);             //在指定位置插入n个字符C 
  • string& erase(int pos,int n = npos);            //删除从pos开始的n个字符

string获得子串

  • string substr(int pos = 0, int n = npos)const;              //返回由pos开始的n个字符组成的字符串
上一篇:1987. 粉刷栅栏


下一篇:STL基础