C语言 ——— 学习、使用 strcat函数 并模拟实现

目录

学习strcat函数​编辑

使用strcat函数​编辑

模拟实现strcat函数


学习strcat函数

strcat函数所需要的头文件:

#include<string.h>

strcat函数的参数解析:

source 字符串追加到destination 字符串。destination 中的字符串结束标志 '\0' 被 source 的第一个字符覆盖,source 字符串后面的字符依次向后追加,且 source字符串的 '\0' 也要追加上

source 字符串的内容不会被改变,所以可加上 const 关键字修饰

strcat函数的返回值:

返回 destination 字符串的起始位置

注意:

destination 字符串的空间要足够大,能容纳下追加的 source 字符串,否则就会报错


使用strcat函数


模拟实现strcat函数

复制代码
char* my_strcat(char* destination, const char* source)
{
	// 断言
	assert(destination != NULL);
	assert(source != NULL);

	// 先保存目标字符串的首地址
	char* ret = destination;

	// 找到目标字符串的'\0'
	while (*destination)
	{
		destination++;
	}

	// 追加
	while (*source)
	{
		*destination++ = *source++;
	}

	// 返回目标字符串的首地址
	return ret;
}

代码验证:

相关推荐
鹿鹿学长4 小时前
2025年全国大学生数学建模竞赛(C题) 建模解析|婴儿染色体数学建模|小鹿学长带队指引全代码文章与思路
c语言·开发语言·数学建模
伴杯猫4 小时前
【ESP32-IDF】基础外设开发2:系统中断矩阵
c语言·单片机·嵌入式硬件·mcu·物联网·github
Want5956 小时前
C/C++圣诞树①
c语言·开发语言·c++
l1t8 小时前
轻量级XML读写库Mini-XML的编译和使用
xml·c语言·解析器
小莞尔9 小时前
【51单片机】【protues仿真】基于51单片机停车场的车位管理系统
c语言·开发语言·单片机·嵌入式硬件·51单片机
xianyinsuifeng10 小时前
Oracle 10g → Oracle 19c 升级后问题解决方案(Pro*C 项目)
c语言·数据库·oracle
学c语言的枫子11 小时前
数据结构——双向链表
c语言·数据结构·链表
3壹12 小时前
数据结构精讲:栈与队列实战指南
c语言·开发语言·数据结构·c++·算法
etcix13 小时前
dmenux.c: integrate dmenu project as one file
c语言·前端·算法
曙曙学编程15 小时前
stm32——独立看门狗,RTC
c语言·c++·stm32·单片机·嵌入式硬件