模拟实现strncat():
与函数strcat()有区别,主要区别是:strncat()可防止当自己连接自己时找不到'\0'无法连接。而关于strcat()函数可见博客链接http://10740184.blog.51cto.com/10730184/1714515。
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<stdlib.h>
#include<assert.h>
#include<string.h>
char *my_strncat(char *dest, char *src, int len)
{
assert(dest);
assert(src);
char *ret = dest;
while (*dest)
{
dest++;
}
while (len--)
{
*dest = *src;
dest++;
src++;
}
*dest = '\0';
return ret;
}
int main()
{
char arr[20] = "hello ";
int len = strlen(arr);
char *ret = my_strncat(arr, arr, len);
printf("%s", ret);
system("pause");
return 0;
}
转载于:https://blog.51cto.com/10740184/1715208