要求:写一个函数可以比较俩个字符串的大小 eg:字符串a:1234 字符串b:123 比较的结果是a比b大
#include<iostream>
using namespace std;
int my_compare(const char* a,const char* b) //自定义字符串比较函数
{
while (*a!='\0'&& * b!='\0') //循环结束条件:a或b只要有个字符串结束,则循环结束
{
if (*a > *b)
return 1;
else if(*a < *b)
return -1;
a++;
b++;
}
if (*a > *b) //a未到循环标志位,b到达循环标志位。(等价于*a>*b)
return 1;
else if (*a < *b) //同理上一条语句
return -1;
else //此情况为a和b都到结束标志位。
return 0;
}
int main()
{
char a[] = "1234";
char b[] = "123";
int flag = my_compare(a, b);
if (flag > 0)
{
cout << "a比b大" << endl;
}
else if (flag < 0)
{
cout << "a比b小" << endl;
}
else
cout << "a等于b" << endl;
system("pause");
return 0;
}
运行结果: