C++面向对象之string类的使用详解
时间: 2024-04-29 22:21:27 浏览: 126
string类是C++的标准库中提供的一个字符串处理类,它可以方便地进行字符串的存储、操作和输出。下面详细介绍一下string类的使用。
1. string类的定义
我们可以用以下方式来定义一个string类型的变量:
```c++
string str;
```
2. string类的赋值
我们可以使用以下方式对字符串进行赋值:
```c++
string str = "Hello World!";
string str1("Hello World!");
string str2(str1);
```
3. string类的长度
使用以下方式可以获取string类型变量的长度:
```c++
string str = "Hello World!";
int len = str.length(); //获取字符串长度
```
4. string类的拼接
使用加号(+)可以将两个字符串拼接起来:
```c++
string str1 = "Hello ";
string str2 = "World!";
string str = str1 + str2;
```
也可以使用append()函数将一个字符串追加到另一个字符串末尾:
```c++
string str1 = "Hello ";
string str2 = "World!";
str1.append(str2);
```
5. string类的比较
我们可以使用以下方式比较两个字符串是否相等:
```c++
string str1 = "Hello";
string str2 = "hello";
if(str1 == str2) {
cout << "相等" << endl;
} else {
cout << "不相等" << endl;
}
```
在比较时,string类会自动忽略大小写。
6. string类的查找
我们可以使用以下方式查找一个字符串中是否包含另一个字符串:
```c++
string str = "Hello World!";
string sub = "World";
int pos = str.find(sub); //查找子串的位置
if(pos != string::npos) {
cout << "包含" << endl;
} else {
cout << "不包含" << endl;
}
```
find()函数会返回子串在字符串中的位置,如果没有找到则返回string::npos。
7. string类的截取
我们可以使用以下方式对字符串进行截取:
```c++
string str = "Hello World!";
string sub = str.substr(6, 5); //从第6个字符开始截取长度为5的子串
cout << sub << endl;
```
8. string类的转换
我们可以使用以下方式将字符串转换为数字:
```c++
string str = "123";
int num = stoi(str); //将字符串转换为整数
cout << num << endl;
```
也可以使用以下方式将数字转换为字符串:
```c++
int num = 123;
string str = to_string(num); //将整数转换为字符串
cout << str << endl;
```
9. string类的输入输出
我们可以使用以下方式对string类型变量进行输入输出:
```c++
string str;
cin >> str; //从标准输入读取一个字符串
cout << str << endl; //将字符串输出到标准输出
```
以上就是string类的基本使用方法,希望能对你有所帮助。
阅读全文