***首先我们看【第一种情况】:
通过【传值】能否完成两个整数的交换?
## 答案:否定! 且看下面代码:****
#include <stdio.h>
//交换函数声明
void swap(int a, int b);
int main()
{
int a = 9;
int b = 8;
swap(a, b); //调用函数
printf("a=%d,b=%d\n", a, b);
return 0;
}
//交换函数定义
void swap(int a, int b)
{
int temp; //临时变量
temp = a;
a = b;
b = a;
}**
配图分析:
实际上我们看到通过子函数swap()并没有实现2个整数的交换!
原因很简单:那就是函数调用时,实参和形参占有不同分存储单元,通过函数swap()只是将a和b的值传递给