目录
string本质使一个类,类内封装了char *(字符串指针)
构造函数原型:
string(); //空字符串
string(const char* s); //通过字符串初始化
string(const string& str); //(构造函数)通过string对象实例化另一个string对象
string(int n,char c); //使用n个字符初始化
赋值重载函数 = assign
string& operator=(const char* s);//char*类型字符串赋值给当前的字符串
string& operator=(const string &s);//把字符串s赋给当前的字符串
string& operator=(char C): //字符赋值给当前的字符串
string& assign(const char *S);//把字符串s赋给当前的字符串
string& assign(const char *s, int n); //把字符串s的前n个字符赋给当前的字符串
string& assign(const string &s); //把字符串s赋给当前字符串
string& assign(int n,char c);//用n个字符C赋给当前字符串
拼接函数原型 += append
string& operator+=(const char* str);//重载+=操作符 (参数为字符串)
string& operator+-(const char C);//重载+=操作符 (参数为字符)
string& operator+=(const string& str); .//重载+=操作符 (参数为对象)
string& append(const char *s);//把字符串s连接到当前字符串结尾 (参数为字符串)
string& append(const char *s,int n);//把字符串s的前n个字符连接到当前字符串结尾
string& append(const string &s);//同operator+=(const string& str) (参数为对象)
string& append(const string &s, int pos, int n); //字符串s中从pos开始的n个字符连接到字符串结尾
查找和替换函数原型 find replace
(find从左向右查,rfind从右向左查,find查不到返回-1)
int find(const string& str,int pos=0) const;//查找str第1次出现位置,从pos开始查找
int find(const char* s, int pos = 0) const;//查找s第1次出现位置从pos开始查找
int find(const char* s, int pos, int n) const;//从pos位置查找s的前n个字符第1次位置
int find(const char C, int pos = 0) const;//查找字符c第1次出现位置
int rfind(const string& str, int pos=npos) const; //查找str最后1次位置从pos开始查找
int rfind(const char* s, int pos = npos) const;,//查找s最后1次出现位置从pos开始查找
int rfind(const char* s, int pos, int n) const;//从pos查找s的前n个字符最后1次位置
int rfindconst char C, int pos = 0) const;//查找字符c最后1次出现位置
string& replace(int pos, int n, const string& str);//从pos开始n个字符替换为字符串str
string& replace(int pos, int n,const char* s);//从pos开始的n个字符替换为字符串s
字符串比较函数 compare
(按ascII值逐位比较,不受长度影响,=返回0,>返回1,<返回-1)
int compare(const string &s) const; //与字符串s比较
int compare(const char *s) const;//与字符串s比较
字符存取 [] at
char& operator[ ] (int a); //通过 [ ] 方式取字符 例:string a ; a[ 1 ] = 'a' ; cout << a [ 1 ] ;
cahr& at(int n); //通过at方法取字符 例:string a ; a.at ( 1 )= 'a' ; cout << a.at ( 2 ) ;
插入和删除字符串 insert erase
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个字符
获取子串 substr
目录
string substr (int pos = 0 , int n = npos) const ; //返回从pos开始的n个字符组成的字符串