📜  C++ string.compare()函数(1)

📅  最后修改于: 2023-12-03 14:39:53.153000             🧑  作者: Mango

C++ string.compare()函数

在C++中,string类型有一个名为compare()的函数,用于比较两个字符串的大小关系。

函数签名
int compare (const string& str) const;

int compare (size_t pos, size_t len, const string& str) const;

int compare (size_t pos, size_t len, const string& str,
size_t subpos, size_t sublen) const;

int compare (const char* s) const;

int compare (size_t pos, size_t len, const char* s) const;

int compare (size_t pos, size_t len, const char* s, size_t n) const;
参数说明
  • str:要比较的字符串。
  • pos:从字符串哪个位置开始比较。
  • len:比较的字符个数。
  • subpos:从str字符串哪个位置开始比较。
  • sublen:比较的字符个数。
  • s:要比较的C字符串。
  • n:比较的字符个数。
返回值
  • 如果当前字符串大于str,则返回一个大于0的值。
  • 如果当前字符串小于str,则返回一个小于0的值。
  • 如果当前字符串等于str,则返回0。
代码示例

我们来看一下如何使用compare()函数比较两个字符串的大小关系。

#include <iostream>
#include <string>

using namespace std;

int main()
{
    string str1 = "hello";
    string str2 = "world";
    
    int result = str1.compare(str2);
    if (result > 0) {
        cout << "str1 大于 str2" << endl;
    } else if (result < 0) {
        cout << "str1 小于 str2" << endl;
    } else {
        cout << "str1 等于 str2" << endl;
    }
    
    return 0;
}

输出结果为:str1 小于 str2

总结

使用C++中的字符串比较函数compare()可以方便地比较两个字符串的大小关系,有助于程序员避免手写复杂的比较逻辑。在使用时,需要注意参数的传递和返回值的使用。