1.strcat函数的函数声明
char *strcat(char *_Destination,const char *_Source)
2.strcat函数的头文件
#include <string.h>
3.strcat函数的使用
strcat函数是字符串追加函数,也就是在英国字符串后面追加另一个字符串。
比如在“hello”后面追加一段“world”就可以用strcat函数来实现
#include <stdio.h>
#include <string.h>
int main()
{
char arr1[30] = "hello";
char arr2[] = "world";
strcat(arr1, arr2);
printf("%s\n", arr1);//追加字符串
return 0;
}
结果打印出来就是 helloworld
4.my_strcat函数的实现
之前我们提到了,strcat函数是字符串追加函数,我们在自己实现的时候就需要提前找到被追加的字符串的尾部,也就是找到'\0'。
那么被追加的字符串是可以被改动的,而追加过去的字符串我们就不希望被修改,所以传进去的第一个字符串不需要加const,而第二个字符串需要加const
(assert是断言,判断传进去的字符串是否合法)。
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <string.h>
#include <assert.h>
char* my_strcat(char* dest, const char* str)
{
char* ret = dest;
assert(*dest != NULL);
assert(*str);
//找到目的字符串里的'\0'
while (*dest != '\0')
{
dest++;
}
//追加
while (*dest++ = *str++)
{
;
}
return ret;
}
int main()
{
char arr1[30] = "hello";
char arr2[] = "world";
my_strcat(arr1, arr2);
printf("%s\n", arr1);
return 0;
}