题目:模拟实现strcmp函数
分析:strcmp()的函数功能是比较两个字符串str1和str2的大小(ASCII码)str1大于str2,返回结果大于0,str1小于str2,返回结果小于0,str1等于str2,返回结果等于0。
int my_strcmp(const char* str1, const char* str2)
{
assert(str1);
assert(str2);
//两个字符串都没结束,并且对应字符串相等,就一直往后移
while (*str1 != '\0' && *str2 != '\0' && *str1 == *str2)
{
str1++;
str2++;
}
//来到这本来有5种情况(但是返回值是>0,==0,<0的话,直接返回*str1-*str2)
//*str1=='\0',*str2!='\0'(str1<str2)
//*str1!='\0',*str2=='\0'(str1>str2)
//*str1>*str2(str1>str2)
//*str1<*str2(str1<str2)
//*str1=='\0',*str2=='\0'(str1==str2)
return (*str1-*str2);
}