int HByte(char ch)
{
return (unsigned char)ch>>7;
}
/******************************************
判断两个字符串是否匹配
*******************************************/
int str_cmp(char *sVar1, char *sVar2)
{
int cmp=0; //比较结果的返回值
while(*sVar1!='\0' && *sVar1!='\0')
{
//判断高位是否是1,是1连读两个字节,否则,读一个字节
if(!HByte(*sVar1) && !HByte(*sVar2))
{
cmp=*sVar1-*sVar2;
if(cmp != 0)
{
break;
}
else
{
sVar1++;
sVar2++;
}
}
else if(HByte(*sVar1) && !HByte(*sVar2))
{
cmp=1;
break;
}
else if(!HByte(*sVar1) && HByte(*sVar2))
{
cmp=-1;
break;
}
else
{
cmp=*sVar1-*sVar2;
if(cmp != 0)
{
break;
}
else
{
sVar1++;
sVar2++;
cmp=*sVar1-*sVar2;
if(cmp != 0)
{
break;
}
else
{
sVar1++;
sVar2++;
}
}
}
}
if(*sVar1=='\0' && *sVar2!='\0')
{
cmp=-1;
}
else if(*sVar1!='\0' && *sVar2=='\0')
{
cmp=1;
}
else if(*sVar1=='\0' && *sVar2=='\0')
{
cmp=0;
}
return cmp;
}
08-19
3323
![](https://csdnimg.cn/release/blogv2/dist/pc/img/readCountWhite.png)
07-12
“相关推荐”对你有帮助么?
-
非常没帮助
-
没帮助
-
一般
-
有帮助
-
非常有帮助
提交