编写c语言函数,利用地址传递的方式,实现数据交换
时间: 2024-09-25 19:10:17 浏览: 41
C语言函数参数的传递详解
在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);
// 调用swap函数,传入x和y的地址
swap(&x, &y);
printf("After swapping: x = %d, y = %d\n", x, y);
return 0;
}
```
在这个例子中,当`main`函数结束时,`x`会被修改为10,而`y`会变为5,实现了数据交换。注意我们在函数`swap`中使用了解引用操作符`*`来访问指针所指向的变量值。
阅读全文