模拟实现strcat
strcat函数的功能
把src所指向的字符串(包括“\0”)复制到dest所指向的字符串后面(删除dest原来末尾的“\0”)。要保证dest足够长,以容纳被复制进来的*src。*src中原有的字符不变。返回指向dest的指针。
说明
src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串
模仿实现
#include <stdio.h>
#include<assert.h>
#include<Windows.h>
char* my_strcat(char* dest, char* src)
{
char *cp = dest;
// 对接受到的两个指针进行断言
assert(src&&dest);
//将dest遍历至\0
while (*dest != '\0')
{
dest++;
}
//将src内容复制在dest之后
while (*dest++ = *src++)
{
;
}
return cp;
}
int main()
{
char str[32] = "abcdefgh";
char buf[32] = "ijklmnop";
printf("%s\n", my_strcat(str, buf));
system("pause");
return 0;
}
运行结果