#include<stdio.h>
#include<windows.h>
#include<assert.h>
char *my_strncmp(const char *arr, const char*arr1, int count)
{
assert(arr&&arr1);
while (count&&(*arr==*arr1)) //while循环对字符串按位进行比较,count为0时或者字符串不相等时退出
{
if (*arr == '\0')
return 0;
arr++;
arr1++;
count--;
}
return *arr - *arr1; //用AscII对字符串进行比较,然后返回比较值
}
int main()
{
char arr[32] = "AC";
char arr1[32] = "ac";
int len = strlen(arr);
printf("%d\n", my_strncmp(arr, arr1, len));
system("pause");
return 0;
}
函数算法思想:定义两个指针 char *arr, char *arr1,分别指向字符串arr,arr1,然后指针从字符串开始一直指向末尾,按位对字符串进行比较。num是一共可以比较多少位。