如何使用C语言通过传递指向变量的指针来交换两个变量的值?
时间: 2024-10-28 18:08:44 浏览: 16
在C语言中,你可以通过函数来交换两个变量的值,利用指针作为参数。下面是一个简单的例子,创建了一个名为`swap`的函数,它接受两个整数指针作为输入,并通过它们间接修改了原始变量的值:
```c
#include <stdio.h>
// 定义一个函数来交换两个变量的值
void swap(int* a, int* b) {
// 临时存储第一个变量的值
int temp = *a;
// 将第二个变量的值赋给第一个
*a = *b;
// 将临时存储的值赋给第二个
*b = temp;
}
int main() {
int x = 5, y = 10;
printf("Before swapping: x = %d, y = %d\n", x, y);
// 通过指针交换x和y的值
swap(&x, &y);
printf("After swapping: x = %d, y = %d\n", x, y);
return 0;
}
```
在这个程序中,`&x`和`&y`分别是变量`x`和`y`的地址,将它们传递给`swap`函数后,函数内部通过解引用操作符`*`改变了这两个地址对应的值。
阅读全文