当前位置: 首页 > article >正文

模拟实现strcat函数

1.strcat的作用

char * strcat ( char * destination, const char * source );

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

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

 

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

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

目标空间必须可修改。

实例:

#include <stdio.h>

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

输出结果:

e66b32b35d3f4c2eb4553868a0237468.png 

 2.模拟实现strcat

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;
}

 

 

 


http://www.kler.cn/a/382349.html

相关文章:

  • 观察者模式(sigslot in C++)
  • SpringBoot 自动装配原理及源码解析
  • 合合信息:探索视觉内容安全新前沿
  • 学习“Kotlin编程指南”笔记
  • Burp与其他安全工具联动及代理设置教程
  • 微服务——技术选型与框架
  • 线程池核心参数有哪些
  • Vue 组件传递数据-Props(六)
  • Vue+Springboot 前后端分离项目如何部署?
  • 【FPGA】Verilog:理解德摩根第一定律: ( ̅A + ̅B) = ̅A x ̅B
  • 爬虫下载网页文夹
  • 【C++刷题】力扣-#697-数组的度
  • 【人工智能】Transformers之Pipeline(二十二):零样本文本分类(zero-shot-classification)
  • 7.2 设计模式
  • [WSL][桌面][X11]WSL2 Ubuntu22.04 安装Ubuntu桌面并且实现GUI转发(Gnome)
  • 【论文阅读】-- 多元时间序列聚类算法综述
  • Sigrity Power SI 3D-EM Full Wave Extraction模式如何进行S参数提取和观测3D电磁场和远场操作指导(一)
  • “再探构造函数”(2)
  • 解释器模式:有效处理语言的设计模式
  • Redis 权限控制(ACL)|ACL 命令详解、ACL 持久化
  • 【题解】CF2033G
  • ThinkPHP腾讯云国际短信对接
  • W5100S-EVB-Pico2评估板介绍
  • 史上最全盘点:一文告诉你低代码(Low-Code)是什么?为什么要用?
  • 【青牛科技】GC8549替代LV8549/ONSEMI在摇头机、舞台灯、打印机和白色家电等产品上的应用分析
  • 100种算法【Python版】第48篇——计数排序