原型:extern int strcmp(const char *s1,const char * s2);
用法:#include <string.h>
功能:比较字符串s1和s2。
一般形式:strcmp(字符串1,字符串2)
说明: 当s1<s2时,返回值<0 当s1=s2时,返回值=0 当s1>s2时,返回值>0
即:两个字符串自左向右逐个字符相比(按ASCII值大小相比较),直到出现不同的字符或遇'\0'为止。
#include <stdio.h>
#include <assert.h>
int strcmp(const char *str1, const char *str2)
{
int ret = 0;
assert(str1 != NULL && str2 != NULL);
while(!(ret = *(unsigned char *)str1 - *(unsigned char *)str2) && *str1)
str1++, str2++;
if (ret > 0)
return 1;
else if (ret < 0)
return -1;
return 0;
}
int main(int argc, const char *argv[])
{
char str1[] = "he";
char str2[] = "hef";
int i = 0;
i = strcmp(str1, str2);
printf("%d\n", i);
return 0;
}