strcat()函数,用于两个字符串的拼接。

(1)函数原型:

char *  strcat(char *Dest,const char * Source);

(2)头文件:

#include <string.h>

(3)功能:

将const char * Source所指代的字符串,拼接到char *Dest后面。不会做溢出检查。

(4)基础实例代码

    char a[30] = "zobol";
char b[30] = "的魔法小屋";
strcat(a,b);
printf("%s\n",a);

(5)输出情况



(6)基础实例代码2

	for(int i=0;i<30;++i)
{
printf("%d ",a[i]);//进行一个循环输出,以整数形式因为很多数值没有可显示的asicc码 )
}
for(int i=0;i<30;++i)
{
printf("%d ",b[i]);
} strcat(a,b); //进行一个拼接
for(int i=0;i<30;++i)
{
printf("%d ",a[i]);
}

(7)输出情况:

(8)问题1:如果char *Dest对应的字符串没有足够位置容纳const char * Source的字符串怎么办?

回答:C语言没有给出办法,无论空间够不够都会进行强制拼接,因此会产生越界溢出,影响其他区域的数据。因此使用要小心。

	char a[10] = "zobol"; //容量不够,至少需要15+1
char b[10] = "的魔法小屋";
strcat(a,b);

(9)问题2:如果const char * Source、char *Dest不是字符串,而只是字符数组,会怎么样?

回答:const char * Source指向的是一个字符数组,没有关系,函数会自动读取到数组结束。char *Dest结果类似问题1

	char a[30] = "zobol";
char b[10] = "的魔法小屋";//没有空间给'0'
strcat(a,b);

最新文章

  1. 数据结构笔记--栈的总结及java数组实现简单栈结构
  2. Hide JSP error icons in Eclipse
  3. Java(六)——抽奖系统
  4. ACM/ICPC 之 判别MST唯一性-Kruskal解法(POJ1679)
  5. 小项目特供 简易迷宫(基于Java)
  6. Selenium实战脚本集(4)--简单的开发者头条客户端
  7. java 执行command
  8. poj1113Wall(凸包)
  9. UILabel的简单用法和实际操作
  10. unity基本操作二
  11. GAC write failed when upgrade with InstallShield
  12. tomcat7 https 成功测试
  13. 使用device.js检测设备并实现不同设备展示不同网页
  14. CentOS DNS resolv重启无效的解决方法
  15. Java Web 部署到Tomcat
  16. QT直接支持GB18030,附它对此编码的一堆相关文档描述
  17. 数据的ID名生成新的引用索引树
  18. JAVAEE——Mybatis第一天:入门、jdbc存在的问题、架构介绍、入门程序、Dao的开发方法、接口的动态代理方式、SqlMapConfig.xml文件说明
  19. 洛谷1027 Car的旅行路线
  20. Mybatis使用动态代理实现拦截器功能

热门文章

  1. Java语言学习day21--7月27日
  2. css 进阶实战项目
  3. 基于Vue的v-charts导出图片并下载
  4. ThreadLocal的原理及产生的问题
  5. 车辆跟随滑模控制的python实现
  6. Kubernetes 从入门到进阶实战教程 (2021 最新万字干货版)
  7. JS 的立即执行函数
  8. visio 画泳道图
  9. maven install resources failed: newPosition &lt; 0: (-1 &lt; 0)
  10. 由C# dynamic是否装箱引发的思考