strcat库函数的使用说明
strcat 函数用来追加字符串,但不能自己追加自己,自己追加要用strncat函数
首先我们先来看strcat的如何使用的
#include<string.h> //strcat在string.h文件下
int main()
{
char dst[20] ="hello ";
char src[] = "world"
strcat(dst, src);
/*
dst 为目标数组,即为要改变的数组
src 为来源数组,不需要被修改
*/
printf("%s\n"); //打印为hello world
return 0;
}
strcat 的两个参数,都是字符串的首个字符的地址
对于dst这个数组,它必须是可以被修改的,如果不能被修改,代码就运行不起来
dst必须能容纳src传过来的字符串,不然就会造成数组的越界访问
虽然能打印但已经越界访问了
dst数组中必须有\0不然就会向后访问
src数组要有‘\0’,在第一个\0之前(包括\0)字符都会追加过去,追加的会先把dst数组的第一个\0给覆盖,然后把后面的内容也覆盖了
下面的dst数组经过strcat函数改变后,dst数组的内容
总结
//dst 字符串必须是能修改的,
// //src 可以不被修改
// //dst要有‘\0’,在第一个\0前的的字符会被保存,后面的都会被覆盖
// //src要有‘\0’,在第一个\0之前(包括\0)字符都会追加过去,后面追加
// //dst必须能容纳传过来的字符串,虽然能打印,但数组会越界访问
// //返回值,目标的字符串的起始地址
模拟实现strcat库函数
1.参数设计,两个参数的类型都是为char*
2.返回类型,为修改后字符串的首字符地址
3.实现,要先找dst数组\0的地址,把src数组从\0往后赋值,遇到\0结束
char *strcat(char *dest, const char *src) 这是c语言规定的函数声明
简洁版