//模拟实现strcmp函数 //str1>str2,返回1 //str1=str2,返回0 //str1<str2,返回-1 #include <stdio.h> #include <assert.h> int my_strcmp(const char *str1, const char *str2) { assert(str1); assert(str2); while (*(str1)==*(str2)) { if (*str1 == '\0') return 0; str1++; str2++; } if (*str1 > *str2) return 1; else return -1; } int main() { char *p1 = "ab"; char *p2 = "abcd"; char *p3 = "defab"; printf("%d\n", my_strcmp(p1, p1)); //0 printf("%d\n", my_strcmp(p1, p2)); //1 printf("%d\n", my_strcmp(p1, p3)); //-1 printf("%d\n", my_strcmp(p3, p1)); //1 return 0; }
版权声明:本文为博主原创文章,未经博主允许不得转载。
时间: 2024-11-05 11:38:09