C++ 字符串比较(compare())
此函数将字符串对象的值与其参数指定的字符序列进行比较。
语法
假设str1和str2是两个字符串,我们想要比较这两个字符串,其语法如下:
int k= str1.compare(str2);
- 当
k==0
时:如果 k 的值为零,意味着两个字符串相等。 - 当
k!=0
时:如果 k 的值不为零,意味着两个字符串不相等。 - 当
k>0
时:如果 k 的值大于零,要么比较的字符串中第一个字符的值较大,要么所有比较的字符匹配但比较的字符串较长。 - 当
k<0
时:如果 k 的值小于零,要么比较的字符串中第一个字符的值较小,要么所有比较的字符匹配但比较的字符串较短。
示例1
#include<iostream>
using namespace std;
void main()
{
string str1="Hello";
string str2="javatpoint";
int k= str1.compare(str2);
if(k==0)
cout<<"Both the strings are equal";
else
cout<<"Both the strings are unequal";
}
输出:
Both the strings are unequal
考虑两个字符串str1和str2。str1包含值”Hello”,str2包含值”javatpoint”,我们使用compare方法比较这两个字符串,这个compare方法总是返回整数值。当我们比较这两个字符串时,我们得到的值小于零。现在,在这种情况下,“if”条件失败,然后else语句将运行并打印“Both the strings are unequal”。
示例2
#include<iostream>
using namespace std;
void main()
{
string str1="Welcome to javatpoint";
string str2="Welcome to javatpoint";
int i=str1.compare(str2);
if(i==0)
cout<<"strings are equal";
else
cout<<"strings are not equal";
}
输出:
Strings are equal