交换函数
void swap(int x; int y)//void函数指无返回值的函数类型,无返回值;
{int tmp =0;
tmp =x;
x=y;
y=tmp;}
int a=10,b=20;//此时调用swap函数后打印出的a,b并不会交换,因为函数中x,y只是付得了a,b的值,但自己有独立的地址所以xy与ab没有关系;要改变a,b就需要通过*a,*b利用地址找到a,b而改变,“*”解引用操作符
即void swap(int* pa;int* pb) //接收的是地址,所以要使用指针变量int*;
{int tmp =0;
tmp=*pa;
*pa=*pb;
*pb =tmp}
int a,b;
swap(*a,*b)
实参---传给函数的参数,可以是常量,变量,表达式,函数
如int max(a,b)--变量;max(100,200)--常量;max(300,100+1)--表达式;max(100,max(100,200))--函数
形参---函数定义时后面的变量--只有在调用函数时形参才分配内存,调用完后自动销毁;
总结:当实参传给形参时本质上是形参只是实参值的拷贝,对于形参的修改是不会影响实参的