判断字符串是否相等c++
时间: 2024-09-24 09:21:10 浏览: 76
在 C++ 中,判断两个字符串是否相等通常使用 `==` 运算符或者 `std::string` 类型的 `compare()` 函数。以下是两种常见方法:
1. 使用 `==` 运算符:
```cpp
#include <string>
bool stringsAreEqual(const std::string& str1, const std::string& str2) {
return str1 == str2;
}
```
这里,如果 `str1` 和 `str2` 的内容完全一样,函数会返回 `true`,否则返回 `false`。
2. 使用 `compare()` 函数:
```cpp
#include <string>
using namespace std;
bool stringsAreEqual(const string& str1, const string& str2) {
return str1.compare(str2) == 0;
}
```
`compare()` 函数会比较两个字符串的内容,如果它们相等,则返回 0;如果不相等,返回非零值表示它们之间的相对顺序。
相关问题
判断字符串是否相等用C++
在C++中判断两个字符串是否相等通常使用`==`运算符,它是通过比较字符串内部字符数组的内容来完成的。如果你有两个`std::string`类型的变量,例如:
```cpp
std::string str1 = "hello";
std::string str2 = "world";
bool areEqual = (str1 == str2); // 如果str1和str2内容完全一致,areEqual将会是false
```
如果想忽略大小写比较,可以先将它们转换为小写或大写再做比较:
```cpp
bool areEqualCaseInsensitive = str1.compare(str2) == 0; // 使用compare函数忽略大小写
```
此外,如果你有一个C风格的字符数组(`char*`),你可以使用`strcmp`函数,它同样会返回0表示两个字符串相等:
```cpp
const char* str1C = "hello";
const char* str2C = "HELLO";
int result = strcmp(str1C, str2C); // 结果为0表示相等,非零表示不等
```
C++判断字符串是否相等
可以使用C++中的字符串比较函数`strcmp()`来判断两个字符串是否相等。如果返回值为0,则表示两个字符串相等,否则不相等。
示例代码:
```c++
#include <iostream>
#include <cstring>
using namespace std;
int main() {
string str1 = "hello";
string str2 = "world";
string str3 = "hello";
if (strcmp(str1.c_str(), str2.c_str()) == 0) {
cout << "str1 and str2 are equal" << endl;
} else {
cout << "str1 and str2 are not equal" << endl;
}
if (strcmp(str1.c_str(), str3.c_str()) == 0) {
cout << "str1 and str3 are equal" << endl;
} else {
cout << "str1 and str3 are not equal" << endl;
}
return 0;
}
```
输出结果:
```
str1 and str2 are not equal
str1 and str3 are equal
```
阅读全文