C语言拼接字符串和变量 代码
时间: 2024-08-15 18:03:32 浏览: 62
C语言字符串快速压缩算法代码
在C语言中,拼接字符串和变量通常通过`strcat()`函数或者字符数组操作来完成。如果你有一个字符串常量和一个字符指针变量,你可以这样做:
```c
#include <stdio.h> // 包含strcat函数声明
#include <string.h>
int main() {
char str1[] = "Hello, "; // 字符串常量
char* var = "World!"; // 变量
// 使用strcat拼接两个字符串
strcat(str1, var);
// 输出结果
printf("%s", str1);
return 0;
}
```
在这个例子中,`strcat(str1, var)`会将`var`指向的字符串追加到`str1`后面。注意,`strcat()`会直接修改第一个参数的内存,所以第二个参数应该是已经初始化过的字符串。
如果你想在运行时动态地创建字符串,可以先计算总长度然后动态分配内存:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main() {
char* var = "World!"; // 变量
size_t len1 = strlen(str1); // 获取str1长度
size_t len2 = strlen(var); // 获取var长度
size_t totalLen = len1 + len2; // 总长度
// 动态分配内存
char* result = (char*)malloc(totalLen + 1); // +1 for the null terminator
if (result != NULL) {
strcpy(result, str1); // 拷贝str1到新内存
strcat(result, var); // 拼接var
printf("%s", result);
free(result); // 记得释放内存
} else {
printf("Memory allocation failed.\n");
}
return 0;
}
```
阅读全文