strcat
字符串追加
库函数内的声明
char * strcat ( char * destination, const char * source );
简单例子
#include<stdio.h>
#include<string.h>
int main()
{
char arr1[30]="hello";
char arr2[]="world";
strcat(arr1,arr2);
printf("%s",arr1);
}
//结果:helloworld
使用:
1.源字符串必须以 ‘\0’ 结束。
2.目标空间必须有足够的大,能容纳下源字符串的内容。
3.目标空间必须可修改。
4.字符串自己给自己追加,找不到'\0',导致死循环,使得程序崩溃
my_strcat实现方法
#include <stdio.h>
#include <assert.h>
char* my_strcat(char* dest ,const char* src)
{
assert(dest!=NULL);
assert(src!=NULL);
char* ret=dest;
//1.找到目的字符串的'\0'
while(*dest!='\0')
{
dest++;
}
//2.追加
while(*dest++=*src++)
{
;
}
return ret;
}
int main()
{
char arr1[30]="hello";
char arr2[]="world";
my_strcat(arr1,arr2);
printf("%s",arr1);
}