两个变量字符串咋互换C加加
时间: 2024-12-08 18:22:36 浏览: 53
在C语言中,交换两个字符串变量通常不直接通过赋值操作完成,因为字符串本质上是字符数组,不能像整数那样简单地交换它们的值。不过你可以借助临时变量或者数组来进行间接交换。这里是一个常见的方法:
```c
#include <stdio.h>
#include <string.h>
void swapStrings(char* str1, char* str2) {
if (str1 && str2) { // 检查指针是否为空
char temp[strlen(str1) + 1]; // 为了容纳最长的字符串
strcpy(temp, str1); // 将第一个字符串复制到临时变量
strcpy(str1, str2); // 把第二个字符串赋给第一个
strcpy(str2, temp); // 最后把临时变量的内容赋给第二个
}
}
int main() {
char str1[] = "Hello";
char str2[] = "World";
printf("Before swap: str1 = %s, str2 = %s\n", str1, str2);
swapStrings(str1, str2);
printf("After swap: str1 = %s, str2 = %s\n", str1, str2);
return 0;
}
```
在这个例子中,`swapStrings` 函数接收两个字符串指针作为参数,创建一个临时字符串存储 `str1` 的内容,然后依次将 `str2` 写入 `str1`,最后再将临时变量的内容写入 `str2`。
阅读全文
相关推荐













