[c语言]strcat函数的使用和模拟实现

1.strcat的作用

cpp 复制代码
char * strcat ( char * destination, const char * source );

作用:将源字符串的附加到目标字符串中。目标字符串中的终止空字符将被源字符串的第一个字符替换,并且在将两个字符串连接形成的新字符串的末尾将包含一个空字符。

  • destination:目标字符串,其存储空间必须足够大,以容纳拼接后的字符串和末尾的空字符。
  • source:源字符串,该字符串的内容将被追加到 dest 的末尾。
  • strcat 返回的是指向目标字符串 dest 的指针。

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

目标空间必须有足够的大,能容纳下源字符串的内容。

目标空间必须可修改。

实例:

cpp 复制代码
#include <stdio.h>

int main()
{
	char arr1[100] = "hello ";
	char arr2[10] = "world";
	strcat(arr1, arr2);
	printf("%s", arr1);
	return 0;
}

输出结果:

2.模拟实现strcat

cpp 复制代码
char *my_strcat(char *dest, const char*src)
{
char *ret = dest;
assert(dest != NULL);
assert(src != NULL);
while(*dest)
{
dest++;
}
while((*dest++ = *src++))
{
;
}
return ret;
}
相关推荐
开开心心_Every7 分钟前
快速隐藏程序工具自定义快捷键一键切换
java·开发语言·前端·spring·智能手机·word·intellij-idea
chenbingjie_c16 分钟前
C++ 多态完全指南:从虚函数重写到虚函数表原理
开发语言·c++
是main不是漫18 分钟前
【双指针——移动零】数组划分类题目的入门基石
c++·算法
吴卫斌24 分钟前
定投ETF实战指南(四):行业/主题ETF——定投的“进攻端“
开发语言·python·股票·量化
·present·33 分钟前
CSAPP(Bomb lab)
c语言·c++
超级架构师1 小时前
PRAXO-CORE 2.5.0:用 conformance 和显式边界构建 Go Agent 框架
开发语言·人工智能·后端·golang·ai编程·智能体框架·praxo-core
深圳市快瞳科技有限公司2 小时前
野外鸟类AI识别落地实录:输入适配、结构化输出、去重聚合与置信度分流的工程实践
算法·计算机视觉·鸟类识别·鸟类ai识别·野外鸟类观测·林业调查
叼烟扛炮2 小时前
Linux 学习笔记(四十三):网络编程进阶——自定义协议解决 TCP 粘包与守护进程
linux·开发语言·网络·笔记·tcp/ip
LMT流氓兔3 小时前
第五单元——第十六课:给书店助手加上网页界面
java·开发语言·jvm·人工智能·oracle·langchain·1024程序员节
专注仿真3 小时前
梯度提升类(XFBoost)算法详解与代码实例
开发语言·人工智能·python·算法·大模型训练·控制算法