详解C语言对字符串处理函数的实现方法

目录

  • strlen:
    • 1.计数器版本:
    • 2.递归的版本
    • 3.指针-指针版本
  • strcat:
    • strcmp:
      • 总结

        strlen:
        1.计数器版本:
        #include#include#includeint my_strlen(const char *str){ int count =0; assert(str!=NULL); while(*str!='\0') {count++; str++; } return count; }

        【详解C语言对字符串处理函数的实现方法】
        2.递归的版本
        int my_strlen(const char *str){ assert(str != NULL); if (*str == '\0') return 0; return (my_strlen(++str)+1); }


        3.指针-指针版本
        int my_strlen(const char *str){char *end = str; assert(str!=NULL); assert(end!=NULL); while (*end != '\0'){end++; }return end - str; }


        strcat:
        #include#include#includechar *my_strcat(char *dest,char *str){ char *ret=dest; //存dest的首地址 assert(dest&&str); while(*dest) {dest++; } while(*dest++=*str++); dest=ret; return dest; }


        strcmp:
        int my_strcmp(char *str1, char *str2){ assert(str1&&str2); while(*str1==*str2) {if(str1=='\0'&&str2=='\0')return 0; str1++; str2++; } if(*str1>*str2) return 1; return -1; //或return str1-str2; }


        总结
        本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注脚本之家的更多内容!

          推荐阅读