1.函数介绍
strcat函数可以实现对一个字符串的追加,它的返回类型是一个char*的指针,参数是dest(需要追加的字符串的位置)和src(需要追加的字符串内容)。
2.模拟实现
下面我们来模拟实现,首先字符串追加,肯定是追加在字符串的最后面,所以我们就得取到字符串最后一位的地址,往后实现追加,字符串是以/0为结尾,我们可以循环目标字符串,如果检测到/0,就停止。此时dest指向的是字符串的末尾,往后开始,将src的内容赋给dest并实现自增,直到src遇到/0结束。
注意事项
这里需要注意的是,目标字符串的空间一定要够;
同时它的返回类型是一个字符指针,可以用一个字符指针接收。
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<assert.h>
//strcat函数模拟实现
char* my_strcat(char* dest, const char* src)
{
char* ret = dest;
assert(dest && src);
while (*dest)
{
dest++;
}
while ((*dest++ = *src++))
{
;
}
return ret;
}
int main()
{
char str1[] = "abcde";
char str2[] = "fghij";
char* ret=my_strcat(str1, str2);
printf("%s", str1);
return 0;
}