php中函数参数通报的3种方式和区别(附详解)
发布时间:09/01 来源:未知 浏览:
关键词:
php中函数参数传递的三种方式及不同
1.按值传递(pass by value)
使用这种方式,调取函数本省不合错误实参停止操纵,也就是说,即便形参的值在函数中发生了转变,实参的值也完全不会受到影响,仍为调取前的值。这相当于把实参赋值一份给形参,然后调取后内存回收。
<span style="font-size:18px;"><strong>#include<stdio.h> int sum(int x,int y) { return x+y; } int main() { int result=sum(2,3);//通过直接对sum传递参数 printf("%d\n",result); return 0; }</strong></span>
2.地址传递(pass by pointer)
地址传递与按值传递的不一样在于,它把实参的储备地址传送给对应的形参,从而使得形参指针和实参指针指向统一个地址。因此,被调取函数中对形参指针所指向的地址中内容的任何改动都会影响到实参。
#include<stdio.h> int sum(int* x,int* y) { return *x+*y; } int main() { int a,b; a=2; b=3; int result=sum(&a,&b);//通过地址对sum传递参数 printf("%d\n",result); return 0; }
3.援用传递(pass by reference)
以援用为参数,则既可以使得对形参的任何操纵都能改动响应的数据,又使得函数调取显得利便、天然。援用传递方式是在函数定义时在形参前面加上援用运算符“&”。援用相当于实参的别号,他和实参是统一个变量或数值,它的改动就是实参的改动。
<span style="font-size:18px;"><strong>#include<stdio.h> int sum(int& x,int& y)<span style="color:#ff0000;">//定义援用类型</span> { return x+y; } int main() { int a,b; a=2; b=3; int result=sum(a,b);//通过援用对sum传递参数 printf("%d\n",result); return 0; }</strong></span>
引荐教程:《PHP视频教程》
以上就是php中函数参数传递的3种方式和不同(附详解)的具体内容,更多请关注百分百源码网其它相关文章!