【字符串函数】strcat的使用及原理

1.strcat函数的函数声明

char *strcat(char *_Destination,const char *_Source)

2.strcat函数的头文件

#include 

3.strcat函数的使用

strcat函数是字符串追加函数,也就是在英国字符串后面追加另一个字符串。

比如在“hello”后面追加一段“world”就可以用strcat函数来实现

#include 
#include 
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 
#include 
#include 

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;
}

你可能感兴趣的:(c语言,c++)