c语言 使用指针交换两个整数变量的值
时间: 2024-09-21 14:12:08 浏览: 70
在 C 语言中,我们可以使用指针来交换两个整数变量的值,因为指针可以存储变量的地址并允许我们间接访问和修改该变量的值。下面是一个简单的示例:
```c
#include <stdio.h>
// 定义交换函数,接受两个整数的指针作为参数
void swap(int* a, int* b) {
// 创建临时变量,保存第一个指针所指向的值
int temp = *a;
// 将第二个指针所指向的值赋给第一个指针
*a = *b;
// 再将临时变量的值赋给第二个指针
*b = temp;
}
int main() {
int num1 = 5, num2 = 10; // 定义两个整数
printf("Before swapping: num1 = %d, num2 = %d\n", num1, num2);
// 获取变量的地址并传递给 swap 函数
int* ptr1 = &num1;
int* ptr2 = &num2;
// 调用 swap 函数交换这两个地址所对应的值
swap(ptr1, ptr2);
printf("After swapping: num1 = %d, num2 = %d\n", num1, num2);
return 0;
}
```
在这个例子中,`swap`函数通过指针改变了`num1`和`num2`的值,而不需要直接修改它们。运行程序后,你会看到交换后的结果。
阅读全文