[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;
}
相关推荐
万添裁8 分钟前
huawei 机考
算法·华为·深度优先
IronMurphy7 小时前
【算法四十三】279. 完全平方数
算法
墨染天姬8 小时前
【AI】Hermes的GEPA算法
人工智能·算法
mount_myj8 小时前
长长久久【C语言】
c语言
papership8 小时前
【入门级-数据结构-3、特殊树:完全二叉树的数组表示法】
数据结构·算法·链表
smj2302_796826528 小时前
解决leetcode第3911题.移除子数组元素后第k小偶数
数据结构·python·算法·leetcode
九转成圣9 小时前
Java 性能优化实战:如何将海量扁平数据高效转化为类目字典树?
java·开发语言·json
Beginner x_u9 小时前
链表专题:JS 实现原理与高频算法题总结
javascript·算法·链表
SmartRadio9 小时前
ESP32-S3 双模式切换实现:兼顾手机_路由器连接与WiFi长距离通信
开发语言·网络·智能手机·esp32·长距离wifi
laowangpython9 小时前
Rust 入门:GitHub 热门内存安全编程语言
开发语言·其他·rust·github