在C语言中的字符串比较使用的strcmp函数,但在C++中使用的是compare函数。
格式:字符串A.compare(字符串B)(其中还可以指定子串比较,格式:A.compare(0,3,B,4,3)说明字符串A中的从下标为0开始的3个字符和字符串B中的第4个字符串开始的3个字符进行比较)
结果返回:
当字符串A和字符串B相等时,返回0
当字符串A小于字符串B时,返回-1
当字符串A大于字符串B时,返回1
注意:compare函数是逐个字符进行比较的,当比较出结果后,后面的字符就不会进行比较了。
#include<iostream>
#include<string>
using namespace std;
int main(){
string A="ABCDEF";
string B="abCDef";
string C="123045";
string D="102345";
int m=A.compare(B);
int n=A.compare(0,3,B,1,4);
int k=C.compare(D);
int t=C.compare(4,2,D,4,2);
cout<<"m="<<m<<"\t"<<"n="<<n<<"\t"<<"k="<<k<<"\t"<<"t="<<t<<endl;
return 0;
}
结果:m=-1 n=-1 k=1 t=0