C语言中连接两个字符串(不用strcat函数)
时间: 2024-12-15 12:20:02 浏览: 12
在C语言中,如果不想使用`strcat()`函数来连接两个字符串,可以手动操作字符数组来实现这个功能。一种常见的做法是将目标字符串的末尾指向原字符串的开始,然后逐个复制源字符串的所有字符到目标字符串,直到源字符串结束。这里是一个简单的示例:
```c
#include <stdio.h>
#include <string.h>
// 函数原型声明
void string_concat(char *dest, char *src);
int main() {
char dest[50], src[20] = "Hello, ";
strcpy(dest, src); // 将src复制到dest
strcat(dest, "World!"); // 这里不使用strcat,手动添加
printf("Concatenated string: %s\n", dest);
return 0;
}
// 自定义连接字符串的函数
void string_concat(char *dest, char *src) {
int i;
for (i = strlen(src) - 1; i >= 0 && dest[i] != '\0'; i--) { // 遍历src到其结尾
dest[i + 1] = src[i]; // 把src的每个字符放到dest相应位置
}
dest[i + 1] = '\0'; // 确保dest以空字符结束
}
阅读全文