字符串

来源:互联网 发布:补水保湿精华液 知乎 编辑:程序博客网 时间:2024/06/05 06:41

string

  • string 是模板类
typedef basic_string<char> string;

初始化

string s;            //ones = "abc";string s("abc");    //twostring s = "abc";   //threestring s;           //fourcin>>s;string s;           //fivegetline(cin ,s);
istream& getline (istream& is, string& str, char delim);istream& getline (istream& is, string& str);

赋值

string a("abc"),b;//1.用 = 赋值b = a;//2. 用assign成员函数复制b.assign(a);//3. 用assign部分复制,从begin开始复制len个字符。b.assign(a,begin,len);

访问单个字符。

  1. 用下标运算符 [pos]
  2. 用成员函数at(pos)

区别:at会做范围检查,抛出out_of_range异常。


连接

  1. 用 + 连接
  2. 用append(s)连接
  3. append(s,begin,len)
  4. push_back(char c)

比较

  • 方法一:直接用关系运算符进行比较。
  • 方法二: str.compare(···)。

子串

string substr (size_t pos = 0, size_t len = npos) const;

找子串

  • 找不到返回npos。
size_t find (const string& str, size_t pos = 0) const;size_t find (const char* s, size_t pos = 0) const;size_t find (const char* s, size_t pos, size_t n) const;size_t find (char c, size_t pos = 0) const;

返回char*指针

const char* c_str() const;const char* data() const;
原创粉丝点击