用C语言写一个函数,将两个字符串连接
时间: 2024-12-16 13:19:04 浏览: 2
在C语言中,你可以使用标准库函数`strcat()`来连接两个字符串。但是,为了演示如何手动编写一个函数来实现这个功能,我们可以创建一个名为`concat_strings`的函数。这里是一个简单的例子:
```c
#include <stdio.h>
#include <string.h> // 包含strlen函数
// 自定义函数:连接两个字符串
char* concat_strings(const char* str1, const char* str2) {
int len1 = strlen(str1);
int len2 = strlen(str2);
// 分配足够的空间存放结果,包括原字符串1的结束符'\0'和字符串2的字符
char* result = (char*)malloc(len1 + len2 + 1); // 加1是为了防止溢出
if (result != NULL) {
strncpy(result, str1, len1); // 将str1复制到结果
result[len1] = '\0'; // 结果字符串添加'\0'
strcat(result, str2); // 连接str2到结果
} else {
printf("Memory allocation failed.\n");
return NULL; // 内存分配失败,返回NULL
}
return result;
}
int main() {
const char* str1 = "Hello";
const char* str2 = "World";
char* concatenatedStr = concat_strings(str1, str2);
if (concatenatedStr != NULL) {
printf("Concatenated string: %s\n", concatenatedStr);
free(concatenatedStr); // 释放内存
}
return 0;
}
```
阅读全文