string类的基本操作
2020-02-01 20:44
761 查看
string构造函数
string();//创建一个空的字符串 例如: string str; string(const char* s);//使用字符串s初始化 string(const string& str);//使用一个string对象初始化另一个string对象 string(int n, char c);//使用n个字符c初始化 v
案例:
void test01() { string str1("hello world"); cout<<"str1 = "<<str1<<endl; string str2(str1); cout<<"str2 = "<<str2<<endl; string str3(5,'L'); cout<<"str3 = "<<str3<<endl; }
运行结果:
string基本赋值
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赋给当前字符串 string& assign(const string &s, int start, int n);//将s从start开始n个字符赋值给字符串
案例:
void test02() { string str1; str1 = "hello world"; cout<<str1<<endl; string str2; str2 = str1; cout<<str2<<endl; string str3; str3 = 'L'; cout<<str3<<endl; string str4; str4.assign("hello world"); cout<<str4<<endl; string str5; str5.assign("hello world",7); cout<<str5<<endl; string str6; str6.assign(str4); cout<<str6<<endl; string str7; str7.assign(6,'L'); cout<<str7<<endl; string str8; str8.assign(str6,6,5); cout<<str8<<endl; }
运行结果:
string存取字符操作
char& operator[](int n);//通过[]方式取字符 char& at(int n);//通过at方法获取字符
案例:
void test03() { string str1; str1 = "hello world"; cout<<str1<<endl; str1[1] = 'E'; cout<<str1<<endl; str1.at(6) = 'W'; cout<<str1<<endl; //[]和at的区别 如果越界 try { str1[1000]='G';//越界 不抛出异常 //str1.at(1000)='G';//越界 抛出异常 } catch(...) { cout<<"数据异常"<<endl; } }
结果:
[
string字符串追加
string& operator+=(const char* str);//重载+=操作符 string& operator+=(const string& str);//重载+=操作符 string& operator+=(const char c);//重载+=操作符 string& append(const char *s);//把字符串s连接到当前字符串结尾 string& append(const char *s, int n);//把字符串s的前n个字符连接到当前字符串结尾 string& append(const string &s);//同operator+=() string& append(const string &s, int pos, int n);//把字符串s中从pos开始的n个字符连接到当前字符串结尾 string& append(int n, char c);//在当前字符串结尾添加n个字符c
案例:
void test04() { string str1; str1 = "hello"; str1 += " world"; cout<<str1<<endl; string str2; str2 = "hello "; str2 += str1; cout<<str2<<endl; string str3; str3 = "hello "; str3 += 'L'; cout<<str3<<endl; string str4; str4 = "hello "; str4.append("world"); cout<<str4<<endl; string str5; str5 = "hello "; str5.append("world",2); cout<<str5<<endl; string str6; str6 = "hello "; str6.append(str1); cout<<str6<<endl; string str7; str7 = "hello "; str7.append(str1,6,3); cout<<str7<<endl; string str8; str8 = "hello "; str8.append(6,'L'); cout<<str8<<endl; }
运行结果:
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类中的基本操作
- 黑马程序员----关于string类的基本操作举例
- 课堂随笔04--关于string类的一些基本操作
- java string类 基本操作
- C++中string类及文件流类(ofstream,ifstream)的基本操作---按行读取文档
- 黑马程序员——Java基础——String类、StringBuffer类、StringBuilder类、基本数据类型对象包装类操作、正则表达式应用
- String类的输入和输出及基本操作
- Java String类的基本对象操作
- String类的基本操作
- Java——String类及其操作和基本数据类型包装类
- Java 中StringBuffer与StringBuilder区别(转)及String类的一些基本操作代码
- hive的表的基本操作
- Asp.net mvc新手指导入门基本操作
- Hadoop的基本使用(2)——通过代码操作HDFS
- H5JS二维动画制作!two.js的基本操作class2
- NSFileManager—基本的路径操作
- Jxl基本操作
- 路由器的基本命令操作
- 详解JAVA数据库基本操作
- linux下mysql的一些基本操作