详解strcat+模拟实现strcat

strcat -字符串追加

char* strcat(char* destination,const char* source)

 

1.源字符串必须以'\0'结束

2.目标空间必须足够大 能容纳下源字符串的内容

int main()

{

        char arr1[] = "hello";//目标空间不够大

        char arr2[] = "world";

        strcat(arr1, arr2);

        printf("%s\n", arr1);//debug error

}

3.目标空间必须可修改

4.字符串不能自己给自己追加,因为开始追加的时候会覆盖掉原始的'\0'

 

 

模拟实现stract

char* my_strcat(char* dest, const char* src)

{

        char* ret = dest;

        assert(dest != NULL);

        assert(src);

        //1.找到目的字符串的'\0'

        while (*dest!='\0')

        {

               dest++;

        }

        //2.追加

        while (*dest++ = *src++)

        {

               ;

        }

        return ret;

}

int main()

{

        char arr1[30] = "hello\0xxxxxx";

        char arr2[] = "world";

        my_strcat(arr1, arr2);

        printf("%s\n", arr1);

}

 

上一篇:entity framework 新手入门篇(1)-建立模型


下一篇:Scrapy爬取西刺代理ip流程