C语言字符串拼接:不使用strcat实现str1和str2的拼接
要实现拼接字符数组str1和str2到字符数组str1,可以按照以下步骤进行:
- 定义两个字符数组str1和str2,并初始化它们。
- 计算str1的长度len1和str2的长度len2。
- 定义一个整型变量index,初始化为len1。
- 使用for循环将str2中的字符逐个复制到str1中,直到复制完所有字符。
- 在复制字符的过程中,需要保证str1的长度不超过其定义的大小,以防止数组越界。
- 最后,在str1的最后一个字符后添加'\0',表示字符串的结束。
以下是具体的代码实现:
#include <stdio.h>
#define MAX_SIZE 100
void strccat(char str1[], char str2[]) {
int len1 = 0, len2 = 0;
int index = 0;
// 计算str1的长度
while (str1[len1] != '\0') {
len1++;
}
// 计算str2的长度
while (str2[len2] != '\0') {
len2++;
}
// 将str2中的字符逐个复制到str1中
for (index = 0; index < len2; index++) {
if (len1 >= MAX_SIZE - 1) {
// str1已经达到最大长度,不能再添加字符
break;
}
str1[len1++] = str2[index];
}
// 添加字符串结束符
str1[len1] = '\0';
}
int main() {
char str1[MAX_SIZE] = "Hello";
char str2[] = "World";
strccat(str1, str2);
printf("拼接后的字符串为:%s\n", str1);
return 0;
}
运行结果:
拼接后的字符串为:HelloWorld
原文地址: https://www.cveoy.top/t/topic/g8K 著作权归作者所有。请勿转载和采集!