模拟实现strcmp函数的功能
函数原型: int strcmp(const char *s1,const char * s2)
所在头文件:string.h
函数功能:用于比较两个字符串并根据比较结果返回整数。基本形式为strcmp(str1,str2),若str1=str2,则返回零;若str1<str2,则返回负数;若str1>str2,则返回正数。
模拟实现
#include <stdio.h>
#include<assert.h>
#include<Windows.h>
int my_strcmp( char* str1, char* str2)
{
assert(str1);
assert(str2);
while (*str1 == *str2)
{
if (*str1 == '\0'||( *str2='\0'))
return 0;
str1++;
str2++;
}
return *str1 - *str2;
}
int main()
{
char str[32] = "bcdefgh";
char buf[32] = "bcdefgh";
char erc[32] = "abcdefg";
char std[32] = "cdefghi";
printf("%d\n", my_strcmp(str, buf));
printf("%d\n", my_strcmp(str, erc));
printf("%d\n", my_strcmp(str, std));
system("pause");
return 0;
}
运行截图