string类的字符串比较
时间: 2023-11-13 11:12:56 浏览: 79
在C++中,可以使用`string`类来处理字符串,其实现了字符串的比较操作。
`string`类提供了比较操作符`==`和`!=`,可以用于比较两个字符串是否相等。例如:
```c++
string s1 = "hello";
string s2 = "world";
if (s1 == s2) {
cout << "s1 equals s2" << endl;
} else {
cout << "s1 does not equal s2" << endl;
}
```
`string`类还提供了`compare`方法,可以用于比较两个字符串的大小关系。该方法返回值为整数,表示两个字符串的大小关系,具体规则如下:
- 如果字符串相等,返回0;
- 如果第一个字符串小于第二个字符串,返回负数;
- 如果第一个字符串大于第二个字符串,返回正数。
例如:
```c++
string s1 = "hello";
string s2 = "world";
int result = s1.compare(s2);
if (result == 0) {
cout << "s1 equals s2" << endl;
} else if (result < 0) {
cout << "s1 is less than s2" << endl;
} else {
cout << "s1 is greater than s2" << endl;
}
```
需要注意的是,`compare`方法比较的是字符串的字典序,也就是按照字母表顺序来比较字符串的每个字符。比如,"abc"小于"def",因为'a'的ASCII码比'd'小。
阅读全文