一、compare()
用于比较字符串。compare 成员函数有以下返回值:
- -1 表示当前的字符串小;
- 0 表示两个字符串相等;
- 1 表示另一个字符串小。
compare()比较时逐字符比较的,一旦能比较出结果,就不再比较了。
string s1="abandon";
string s2="about";
int b=s1.compare(s2);//直接比较,s1小于s2,故返回-1
cout<<b<<endl;
int c=s1.compare(2,4,s2);//s1下标为2的字符a开始的4个字符ando和s2进行比较。ando大于s2故返回1
cout<<c<<endl;
int d=s1.compare(2,4,s2,1,3);
cout<<d<<endl;//s1下标为2的字符a开始的4个字符ando和s2下标为1的字符b开始的3个字符bou比较。前者小,故返回-1。
string s3="abc";
string s4="abc";
int e=s3.compare(s4);//相等返回0
cout<<e<<endl;
#include <iostream>
#include <string>
using namespace std;
int main()
{
string a = "hello";
string b = "hello";
// 使用compare函数
if (a.compare(b) == 0)
{
cout << "a与b相等" << endl;
}
else
{
cout << "a与b不相等" << endl;
}
};
二、运算符【==、>、<、>=、<=、!=】
#include <iostream>
#include <string>
using namespace std;
int main()
{
string a = "hello";
string b = "hello";
// 使用比较运算符
if (a == b)
{
cout << "a与b相等" << endl;
}
else
{
cout << "a与b不相等" << endl;
}
};