用c语言实现用指针传递参数,实现两个字符串的互换
时间: 2024-05-16 16:14:49 浏览: 94
可以使用指针传递参数来实现两个字符串的互换。以下是一个用C语言实现的示例代码:
```c
#include <stdio.h>
#include <string.h>
void swap(char **str1, char **str2) {
char *temp = *str1;
*str1 = *str2;
*str2 = temp;
}
int main() {
char str1[] = "Hello";
char str2[] = "World";
printf("Before swap:\n");
printf("str1: %s\n", str1);
printf("str2: %s\n", str2);
swap(&str1, &str2);
printf("After swap:\n");
printf("str1: %s\n", str1);
printf("str2: %s\n", str2);
return 0;
}
```
在这个示例代码中,我们定义了一个名为 `swap` 的函数,它使用了指针传递参数来交换两个字符串。该函数使用了一个 `char **` 类型的指针,这是因为我们需要传递两个字符串的指针,而每个字符串本身也是一个指针。
在 `main` 函数中,我们声明了两个字符串 `str1` 和 `str2`,并将它们传递给 `swap` 函数。在 `swap` 函数中,我们使用了一个 `temp` 变量来保存 `str1` 的值,然后将 `str1` 的指针指向 `str2`,将 `str2` 的指针指向 `temp`,从而实现了两个字符串的互换。
最后,我们在 `main` 函数中输出交换后的字符串,以验证函数是否正确工作。
阅读全文