C++ 标准库 - <string>

C++ std::string::compare() 按字典序比较当前串与另一串,返回负值、零或正值,分别表示小于、相等、大于。日常相等判断更常用 ==。

原型

int compare(const string& str) const;
int compare(const char* s) const;

参数

  • str / s:比较对象。另有指定子区间的重载。

返回值

小于返回负整数,相等返回 0,大于返回正整数。具体绝对值由实现决定,只判断符号。

示例

#include <iostream>
#include <string>

int main() {
    std::string a = "abc";
    std::string b = "abd";
    std::cout << (a.compare(b) < 0) << " " << (a == "abc") << std::endl;
    return 0;
}

输出:

1 1

注意事项

比较区分大小写,且按字节序,不一定等于人类语言的词典序。只关心是否相等时写 == / != 更清晰。

<string> 本批成员到此结束。可返回函数总览,或继续查阅<vector>。