注意:strcmp()函数比较的是两个字符串中单个字符的ASCII码值,不是字符串长度。
#include <stdio.h>
#include <assert.h>
int My_Strcmp(const char* str1, const char* str2)
{
assert(str1 && str2); //str1与str2不为空。
while(*str1 == *str2)
{
if(*str1 == 0)
{
return 0;
}
str1++;
str2++;
}
return (*str1 - *str2);
}
int main()
{
char* p1 = "abcdef";
char* p2 = "abckl";
int ret = My_Strcmp(p1,p2);
printf("%d\n",ret); //ret为正数时,p1>p2;为零时,p1=p2;为负数时,p1<p2。
return 0;
}