#include <stdio.h>
int swap(int *p1, int *p2){
int temp;
temp = *p1;
*p1 = *p2;
*p2 = temp;
}
int main()
{
int a = 5;
int b = 6;
int *p_a = &a;
int *p_b = &b;
int swap(int *p1, int *p2);
swap(p_a,p_b);
printf("a=%d,b=%d\n",a, b);
return 0;
}
学习到
- 思路
1两变量
2函数交换两个变量
- 构造交换两个变量的函数
- 两数交换的小公式
int a;
int b;
int temp;
temp = a;
a = b;
b = temp;
- 值传递函数,与地址传递函数
- 值传递函数,其作用只在函数内起作用,并不能关联到主函数中
- 地址传递函数,无论是主函数还是非主函数,地址都是一致的,相同地址上的值变动,大家就都变动。而变量值变动仅仅是局部的