完整网站开发教程,网页做什么主题好,中国最厉害的网站建设公司,网站建设职责要求1.形式参数和实际参数1.1形式参数形参出现在被调函数当中#xff0c;在整个函数体内都可以使用。形参在定义时编译系统并不分配存储空间#xff0c;只有在调用该函数时才分配内存单元。调用结束内存单元被释放#xff0c;故形参只有在函数调用时有效#xff0c;调用结束时不…1.形式参数和实际参数1.1形式参数形参出现在被调函数当中在整个函数体内都可以使用。形参在定义时编译系统并不分配存储空间只有在调用该函数时才分配内存单元。调用结束内存单元被释放故形参只有在函数调用时有效调用结束时不能再使用。1.2实际参数实参出现在主调函数当中当函数调用时朱调函数把实参的值传送给被调函数的形参从而实现函数间的数据传递。传递方式有两种值传递和地址传递方式。2.变量作为函数参数当形参定义为变量时实参可以是常量、变量和表达式这种函数间的参数传递为值传递方式。值传递的特点是参数的“单向传递”int swap(int a,int b){int temp;tempa;ab;btemp;return 0;}int main (void){int a3,b4;swap(a,b);}由于是值传递单向传递并不会改变ab的值。3.数组作为函数参数3.1数组元素作为函数参数数组元素又称为下标变量它具有普通变量的一切性质因此数组元素作为函数的实参进行数据传递是与普通变量没有任何区别也是值传递int swap(int a,int b){int temp;tempa;ab;btemp;return 0;}int main (void){int a[]{3,4};swap(a[0],b[0]);}同样是值传递并不会改变a[0]的值。3.2一维数组名作为函数参数数组名是一个地址是数组的首地址因此用数组名作为函数的参数进行数据传递时执行的是地址传递方式。所谓地址传递顾名思义实参传递的不是数据本身而是数据存在的地址。函数调用时把数组名即数组的首地址作为实参传递给形参(必须是可接受地址的数组名或者指针变量)形参数组名取得首地址后就有了实在的数组这时实质上实参和形参是同一个数组指向同一段存储空间实参的改变就是对形参的改变所以传址方式可看成是数据进行了“双向传递”。3.3数组指针即数组元素的地址作为函数参数由于数组元素的地址的本质仍然为地址所以属于地址传递方式。int swap(int *a,int *b){int temp;temp*a;*a*b;*btemp;return 0;}int main (void){int arr[] {1,2};int *a arr[0];int *b arr[1];swap(a,b);}重点数组元素(下标变量)作为函数的参数进行的数据传递是值传递方式数组名(数组首地址)、数组元素的地址(arr[0])作为函数参数进行的数据传递是地址传递方式。实参为数组名是形参接收时可以有三种形式带下标的数组名(arr[0])。不带下标的数组名(arr)、可接收地址值的指针变量名(*a)。由于是参数组和形参数组都指向同一段内存单元故它们操作的是同一批数据所以形参的改变就是改变了实参中的数据。原文http://blog.csdn.net/qq_30351805/article/details/51344316