string的基本概念及常用接口

string的基本概念

本质:

string时C++风格的字符串,而string本质上是一个类。

string和char*的区别:

char*是一个字符指针。而string是一个类,类内部封装了char*,管理这个字符串,是一个char*型的容器。

特点:

1、string类内部封装了很多的成员方法

eg:查找find、拷贝copy、删除delete、替换replace、插入insert

2、string管理char*所分配的内存,不用担心复制越界和取值越界等,由类内部进行负责。

string构造函数

string构造函数作用:对字符串进行初始化

初始化的方式有4种

原型分别为:

1、string();//无参构造--创建一个空的字符串。eg:string str;

2、string(const char* s);//有参构造---初始化字符串

3、string(const string &str);//拷贝构造---使用一个string对象初始化另一个string对象

4、string(int n,char c);//使用n个字符c进行初始化

eg:string的基本概念及常用接口_第1张图片

 string的赋值操作

给string赋值有7种方法

原型分别为:

1、string& operator=(const char* s);//char*类型字符串赋值给当前的字符串

2、string& operator=(const string &s);//将字符串s赋给当前的字符串(类似于拷贝构造)

3、string& operator=(char c);//将字符c赋值给当前的字符串

4、string& assign(const char*s);//把字符串s赋给当前字符串

5、string& assign(const char* s,int n);//把字符数组s中的前n个字符赋给当前字符串

6、string& assign(const string &s);//把字符串s赋给当前字符串

7、string& assign(int n,char c);//将n个字符c赋给当前字符串

eg:

string的基本概念及常用接口_第2张图片

 string字符串拼接

作用:实现在字符串末尾拼接字符串

拼接字符串有两大方法,一种是用重载后的+=,另一种是用string提供的成员函数append来实现。

字符串拼接函数原型:

string的基本概念及常用接口_第3张图片

eg:string的基本概念及常用接口_第4张图片

string查找和替换

查找:查找指定位置的字符串是否存在

替换:在指定的位置替换字符串

常用的查找和替换函数

函数原型:

int find(const string &str,int pos=0)const;//从pos开始(默认从0开始),查找str第一次出现的位置

int find(const char c,int pos=0)const;//从pos开始,查找字符c第一次出现的位置

int rfind(const string &str,int pos=npos)const;//从str最后一个位置从右向左查找str第一次出现的位置

int rfind(const char c,int pos=0)const;//查找字符c最后一次出现的位置

string& replace(int pos,int n,const string &str);//用str替换从pos开始的n个字符

eg:

string的基本概念及常用接口_第5张图片

 string字符串比较

比较方式:

字符串比较是按字符的ASCII码进行对比的

若两个字符串相等,则返回0

若大于,则返回1

若小于,则返回-1

string用于比较的内置函数为compare

eg:

string的基本概念及常用接口_第6张图片

 string字符存取

string中单个字符的存取方式有两种:(可读可写)

一种是用[]进行访问,另一种是用at进行访问。

eg:string的基本概念及常用接口_第7张图片

 string插入与删除

string插入用insert,删除用erase

string的基本概念及常用接口_第8张图片

eg:

string的基本概念及常用接口_第9张图片

string子串

 求string子串的函数名为substr

函数原型:

string substr(int pos=0,int n=npos)const;//返回由pos开始的n个字符组成的字符串

具体应用实例:

string的基本概念及常用接口_第10张图片

 

你可能感兴趣的:(开发语言,c++)