strcat函数的使用:
#include<stdio.h>
#include<string.h>
int main()
{
char str1[] = "hello world";
char str2[20]= "xxxxxxxx";
strcat(str2, str1);
printf("%s", str2);
return 0;
}
模拟实现strcat函数:
char *my_strcat(char *dest, const char*src)
{
char *ret = dest;
assert(dest != NULL);
assert(src != NULL);
while(*dest)
{
dest++;
}
while((*dest++ = *src++))
{
;
}
return ret;
}
strncat函数的使用:
#include<stdio.h>
#include<string.h>
int main()
{
char str1[] = "hello world";
char str2[20]= "xxxxxxxx";
strncat(str2, str1,4);
printf("%s", str2);
return 0;
}
strncat函数的模拟使用:
char *my_strncat(char *dest, const char *src, size_t n)
{
// 找到目标字符串的末尾
char *dest_ned = dest;
while (*dest_end != '\0')
{
++dest_end;
}
// 将源字符串的前n个字符追加到目标字符串的末尾
for (i = 0; i < n && src[i] != '\0'; ++i)
{
*dest_end++ = src[i];
}
// 添加字符串结束符
*dest_end = '\0';
return dest;
}