int strcmp(const char *str1, const char *str2)
{
unsigned const char *s1 = (unsigned const char *) str1;
unsigned const char *s2 = (unsigned const char *) str2;
while (*s1 && *s1 == *s2) {
++s1;
++s2;
}
return *s1 - *s2;
}
while (*s1 && *s1 == *s2)
一直循环,*s1 为真,直到运到结束符’/0’,与s1,和s2一直相同,假设不相同,立马就会结束循环,*s1 - *s2 是一个非0,说明,两个字符不相等