C51学习心得体会,函数的传引用调用和传值调用方法
扫描二维码
随时随地手机看文章
传值调用建立参数的一份拷贝并把它传给调用的函数,在调用函数中修改参数值的拷贝不影响原始的变量值;传引用调用允许调用函数修改原始变量的值。
C语言用指针*和间接引用运算符&模拟传引用调用,数组会自动模拟传引用调用。传引用调用可以在被调用函数中修改调用函数环境中的参数变量,传值调用保护数据。
e.g.
(1)传值调用
int cubeByValue(int);
main()
{ int num=5,result;
result=cubeByValue(num);
}
int cubeByValue(int n)
{
return n*n*n;
}
(2)传引用调用
int cubeByValue(int *);
main()
{ int num=5,result;
cubeByValue(&num);//传递num的地址给nPtr
printf("%d",num);
}
int cubeByValue(int *nPtr)
{
*nPtr=*nPtr * *nPtr * *nPtr;
}
int array[size];
void modifyarray(int [],int );
voidMIDIfyarray(array,size)
{
voidswap( int *,int *);
......
}
注意:可把函数原型swap放在调用函数midifyarray中定义,如上所示,保证只能在调用函数m中才能正确地调用swap