在回顾库里的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