模拟实现 srtcat(字符串追加) --浅谈C语言
  C0Tz0A5KKSwy 2024年08月07日 45 0

strcat

描述

char *strcat(char *dest, const char *src) 把 src 所指向的字符串追加到 dest 所指向的字符串的结尾。

声明

下面是 strcat() 函数的声明。

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

参数

dest -- 指向目标数组,该数组包含了一个 C 字符串,且足够容纳追加后的字符串。
src -- 指向要追加的字符串,该字符串不会覆盖目标字符串。

返回值

该函数返回一个指向最终的目标字符串 dest 的指针。

注意事项:

对于strcat(追加)函数,不能自己追加自己,因为写入后会覆盖掉arr1本身的\0,后面arr2也改变,从而死循环

模拟实现

//my_strcat

#include<stdio.h>
#include<assert.h>
char* my_strcat(char*dest, const char*source)
{
    //ret存dest指针
    char*ret = dest;
    assert(dest&&source);
    //走到'\0'这里
    while (*dest)
    {
        dest++;
    }
    //开始追加,直到最后一个位为'\0',结束循环
    while (*dest++ = *source++)  //strcpy
        ;
    return ret;
}

int main()  //  my_strcat
{
    char arr1[30] = { 'a', 'b', 'c', 'd', '\0' };
    char arr2[] = "bit";
    printf("%s", my_strcat(arr1, arr2));
    return 0;
}
【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2024年08月07日 0

暂无评论

推荐阅读
  gtqiVYjgvftt   12天前   35   0   0 C语言
  FZifmKVgRC4p   2024年08月13日   33   0   0 C语言
  C0Tz0A5KKSwy   2天前   14   0   0 C语言
  IbmESGwVVrv0   2024年08月16日   156   0   0 C语言
  FZifmKVgRC4p   2024年08月16日   90   0   0 C语言
C0Tz0A5KKSwy