c++ substr( ).compare()
时间: 2023-11-06 11:54:21 浏览: 37
`substr()` 是 C++ 中的字符串成员函数,用于提取子字符串。`compare()` 也是字符串成员函数,用于比较两个字符串。
在使用时,你可以先使用 `substr()` 函数提取一个字符串的子串,然后再使用 `compare()` 函数将提取的子串与目标字符串进行比较。`compare()` 函数返回一个整数值,表示两个字符串的比较结果。
下面是一个示例代码:
```cpp
#include <iostream>
#include <string>
int main() {
std::string str = "Hello, World!";
std::string sub = str.substr(0, 5); // 提取从索引0开始的长度为5的子串
if (sub.compare("Hello") == 0) {
std::cout << "子串与目标字符串相等" << std::endl;
} else {
std::cout << "子串与目标字符串不相等" << std::endl;
}
return 0;
}
```
在上面的示例中,`substr(0, 5)` 提取了从索引0开始的长度为5的子串,即 "Hello"。然后使用 `compare()` 函数将提取的子串与目标字符串 "Hello" 进行比较,如果相等则输出 "子串与目标字符串相等",否则输出 "子串与目标字符串不相等"。
相关问题
c++string的库函数
C++中的string库函数提供了一系列用于处理字符串的函数。以下是一些常用的C++ string库函数:
1. length():返回字符串的长度。
2. size():返回字符串的长度,与length()函数功能相同。
3. empty():判断字符串是否为空,如果为空则返回true,否则返回false。
4. clear():清空字符串,将其内容置为空。
5. append():在字符串末尾添加另一个字符串或字符。
6. insert():在指定位置插入另一个字符串或字符。
7. erase():删除指定位置的字符或一段字符。
8. replace():替换指定位置的字符或一段字符。
9. substr():返回从指定位置开始的子字符串。
10. find():查找指定字符串或字符在原字符串中的位置。
11. compare():比较两个字符串的大小,返回一个整数值。
这些函数只是C++ string库函数中的一部分,还有其他更多的函数可供使用。
c++string字串
C++中的string是一个标准库类,用于处理字符串。它提供了一系列的成员函数和操作符,使得字符串的操作更加方便和高效。
以下是一些常用的string操作:
1. 创建string对象:可以使用赋值运算符或者构造函数来创建string对象,例如:
```
string str1 = "Hello"; // 使用赋值运算符
string str2("World"); // 使用构造函数
```
2. 字符串连接:可以使用"+"操作符或者成员函数append()来连接两个字符串,例如:
```
string str3 = str1 + " " + str2; // 使用"+"操作符
string str4 = str1.append(" ").append(str2); // 使用append()函数
```
3. 字符串长度:可以使用成员函数length()或者size()来获取字符串的长度,例如:
```
int len = str3.length(); // 使用length()函数
int size = str3.size(); // 使用size()函数
```
4. 字符串比较:可以使用比较操作符或者成员函数compare()来比较两个字符串,例如:
```
bool isEqual = (str1 == str2); // 使用"=="操作符
int result = str1.compare(str2); // 使用compare()函数,返回值为0表示相等
```
5. 字符串查找和替换:可以使用成员函数find()来查找子串在字符串中的位置,使用成员函数replace()来替换子串,例如:
```
size_t pos = str3.find("World"); // 查找子串的位置
str3.replace(pos, 5, "C++"); // 替换子串
```
6. 字符串切割:可以使用成员函数substr()来获取字符串的子串,例如:
```
string subStr = str3.substr(6, 5); // 获取从位置6开始的长度为5的子串
```