在 C++中,如何比较两个字符串是否相等或某个字符串是否以特定子串开头
时间: 2024-10-05 17:04:04 浏览: 105
C++实现找出两个字符串中最大的公共子串
5星 · 资源好评率100%
在C++中,有几种方式可以比较两个字符串:
1. **直接使用 `==` 操作符**:
如果你想检查两个字符串是否完全相等,你可以直接使用 `==` 运算符:
```cpp
std::string str1 = "hello";
std::string str2 = "hello";
if (str1 == str2) {
// 字符串相等
}
```
2. **使用 `std::string::compare()` 函数**:
这个函数会返回两个字符串的比较结果,如果相同则返回0:
```cpp
int result = str1.compare(str2);
if (result == 0) {
// 字符串相等
}
```
3. **检测子串开头**:
你可以使用 `std::string::substr()` 函数获取子串,然后通过 `str1.substr(0, n) == str2` 来判断某字符串是否以另一个字符串开头:
```cpp
if (str1.substr(0, strlen("prefix")) == "prefix") {
// str1 以 "prefix" 开头
}
```
阅读全文