用c语言连接字符串 写一个函数,将两个字符串连接
时间: 2024-03-08 10:50:49 浏览: 71
好的,下面是一个用C语言实现的连接字符串的函数:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
char* strconcat(const char* str1, const char* str2) {
// 计算字符串长度
int len1 = strlen(str1);
int len2 = strlen(str2);
// 分配存储空间
char* result = (char*)malloc(len1 + len2 + 1);
if (result == NULL) {
printf("Error: Failed to allocate memory!\n");
exit(1);
}
// 复制字符串
strcpy(result, str1);
strcat(result, str2);
// 返回连接后的字符串
return result;
}
int main() {
const char* str1 = "Hello, ";
const char* str2 = "world!";
char* result = strconcat(str1, str2);
printf("%s\n", result);
free(result); // 释放内存
return 0;
}
```
这个函数叫做 `strconcat`,它接受两个参数 `str1` 和 `str2`,分别表示待连接的字符串。函数内部使用 `strlen` 函数计算字符串长度,然后使用 `malloc` 函数分配存储空间,最后使用 `strcpy` 和 `strcat` 函数复制和连接字符串,最终返回连接后的字符串。注意,在程序结束时需要使用 `free` 函数释放内存。
阅读全文