#include<iostream>
#include<stdio.h>
#include<assert.h>
int my_strcmp(const char *str1,const char str2);
int my_strcmp( const char *str1,const char *str2)
{
assert(str1 != NULL || str1 != NULL);
while (*str1 && *str2 && *str1 == *str2)
{
str1++;
str2++;
}
int count ;
count = *str1 - *str2 ;
if(count > 0)
{
return 1;
}else if(count < 0)
{
return -1;
}else
{
return 0;
}
}
int main()
{
char str1[] = "liusenlin";
char str2[] = "liusenlll";
int result = 0;
result = my_strcmp(str1,str2);
printf("%d \n",result);
return 0;
}
运行结果:
-1
Press any key to continue
#include<iostream>
#include<stdio.h>
#include<assert.h>
int my_strncmp(const char *str1,const char str2,int len);
int my_strncmp( const char *str1,const char *str2,int len)
{
assert(str1 != NULL || str1 != NULL);
while (*str1 && *str2 && *str1 == *str2 && len--)
{
str1++;
str2++;
}
int count ;
count = *str1 - *str2 ;
if(count > 0)
{
return 1;
}else if(count < 0)
{
return -1;
}else
{
return 0;
}
}
int main()
{
char str1[] = "liusenlin";
char str2[] = "liusenlll";
int result = 0;
result = my_strncmp(str1,str2,4);
printf("%d \n",result);
return 0;
}
运行结果:
0
Press any key to continue