[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;
}
相关推荐
九年义务漏网鲨鱼2 分钟前
【人脸伪造检测后门攻击】 Exploring Frequency Adversarial Attacks for Face Forgery Detection
论文阅读·python·算法·aigc
一个数据小开发2 分钟前
业务开发问题之ConcurrentHashMap
java·开发语言·高并发·map
_OLi_8 分钟前
力扣 LeetCode 977. 有序数组的平方(Day1:数组)
数据结构·算法·leetcode
励志成为嵌入式工程师23 分钟前
c语言选择排序
c语言·算法·排序算法
三小尛25 分钟前
希尔排序(C语言)
c语言·数据结构·排序算法
風清掦27 分钟前
C/C++每日一练:编写一个查找子串的位置函数
c语言·c++·算法
三小尛29 分钟前
插入排序(C语言)
c语言·开发语言
南宫理的日知录35 分钟前
106、Python并发编程:深入浅出理解线程池的内部实现原理
开发语言·python·学习·编程学习
WolvenSec40 分钟前
C/C++逆向:结构体逆向分析
c语言·开发语言·c++·网络安全
A charmer1 小时前
算法每日双题精讲——滑动窗口(最大连续1的个数 III,将 x 减到 0 的最小操作数)
c++·算法·leetcode