strcpy的三种实现方式 +strlen strcmp实现

来源:互联网 发布:php 直播间 编辑:程序博客网 时间:2024/05/16 04:40

char * strCpy( char *str1,constchar* str2){    int i =0;    for (; str2[i]!='\0'; i++) {        str1[i] = str2[i];    }    //下面这句一定要加上    str1[i] = '\0';    return str1;}char * strCpy( char *dest,constchar* src){    size_t len = strlen(src);    for (size_t i=0; i<len+1; i++) {        dest[i] = src[i];    }    return dest;}//最优解!!!char * strCpy( char *dest,constchar* src){   assert(dest!=NULL);   assert(src!=NULL);    char *temp = dest; //保存首地址    while ((*temp++ = *src++)) {    }    return dest;}


int strLen(const char *str){    if(str==NULL) return 0;    int len = 0;    for(; *str++ != '\0'; )    {        len++;    }    return len;}int strCmp( const char *str1,const char* str2){    assert((NULL != str1) && (NULL != str2));    while (*str1 && *str2 && (*str1 == *str2))    {        str1 ++;        str2 ++;    }    return *str1 - *str2;    /*如果str1 > str2,则返回值大于0,如果str1 = str2,则返回值等于0,如果str1  < str2 ,则返回值小于0。*/}









0 0
原创粉丝点击