首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

这里将讲述的区别,先见下图。 这是的过程,我们明明把a,b作为实参传过去了。可以看到,交换后的a,b并没有达到我们的预期。为什么会这样呢?...其实是因为,的时候,形参是临时创建的,在执行完swap函数后,他们又自动销毁了,从而导致a,b的并没有交换。如果想要改变实参的,我们就需要进行,而不是。...见下图 我们通过把a和b的地址传给了形参,形参就能通过地址,找到a,b,以此来改变a和b的。此时我们的实参就改为&a和&b,注意swap函数的形参类型是int*,这样就能交换a与b的啦。...总结::形参是实参的一份拷贝,函数运行起来后,实参是实参,形参和实参没有任何关联,改变形参时,不会对实参造成影响。            ...:形参是实参地址的一份拷贝,形参指向的实体是实参,对形参解引用后,拿到的内容就是实参,因此,对形参解引用后的内容进行修改,改变的就是实参。

10610

往期文章 【JS ES6】const var let 一文搞懂声明关键字所有的知识点 目录 什么是  例  什么是 例  ---- 什么是 let a = 1; let...b = a; console.log(a, b); //1 1 是获取一份儿相同的,并自身重新开一份儿属于自己的内存地址,两个变量是互相独立的并不会互相影响。  ...例  let a = 1; let b = a; b = 2; console.log(a); console.log(b); 修改了b的,a的不会受到影响,这就是,两者是独立的存在,引用内存比较小的引用赋值一般都是... 什么是 let a = { name: "xiaoxie", }; let b = a; console.log(a, b); 是获取一份儿相同的,不会自身重新开一份儿属于自己的内存地址...两者使用同一个内存地址,一般引用占用内存较大的变量时,会,比如对象和数组。

2.7K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    【C语言函数调用详解】——调用&调用

    一.调用 什么是调用呢?顾名思义,调用就是直接将实参的传递给形参。...num1,num2的目的,我们看看结果是什么样的: 因此,调用,要想在函数内部交换两个变量的,是不可行的。...这里就需要调用。 二.调用 那什么是调用呢?这里的“”指的是地址。 调用是把函数外部创建变量的内存地址传递给函数参数的一种调用函数的方式。...那现在我们用调用的方法对上面的函数重新进行实现: #include //正确的版本 void Swap2(int* px, int* py) { int tmp = 0; tmp...以上就是对函数调用的两种方式,调用和调用的介绍,欢迎大家指正,我们一起进步!!!

    62410

    【C语言】指针进阶之调用与调用

    ✔在编程语言如C中,调用和调用是用来传递参数给函数的方法。它们的主要区别在于参数传递的方式: ☞调用:这是最基本的参数传递方式,它涉及将参数的复制一份传递给函数。...在函数内部,对这些复制的进行的任何修改都不会影响到原参数的,因为函数只是在自己的局部范围内操作这个副本。 ☞调用:这种方式则是将参数的地址传递给函数。...3.调用的举例说明 #include void Swap2(int*px, int*py) {  int tmp = 0;  tmp = *px;  *px = *py;...✔调⽤,可以让函数和主调函数之间建⽴真正的联系,在函数内部可以修改主调函数中的变量; 4.结论 所以未来函数中只是需要主调函数中的变量值来实现计算,就可以采⽤调⽤。...如果函数内部要修改主调函数中的变量的,就需要调⽤。

    12810

    ES6数据传递的

    关于先看一下代码段!...简单来说相当于在服务器上有个页面,把它可乐一份给你你进行修改,不影响服务器的结果,而则是直接在服务器开通了权限给另外一个人进行直接对这个数据操场,因此不过是谁对这个数据进行操作,都将改变!...适用于单一类型(Undefined,String,Number,Boolean,Unll),适用引用类型(Object) 注意虽然引用类型包含Object和Symbol,但是Symbol用于创建唯一的量...小结:单一类型赋值是,而引用类型是,但是在模块化,不管是引用类型还是大一类型,数据传输都是地址,看一下下面的代码段!...这是一个。得出结论在模块化引用其他模块,无论是单一类型还是引用类型数据传输都是方式!

    1.4K40

    5分钟搞懂C语言的

    补全下面的函数使其交换x,y的。 #include "stdio.h" //编写swap函数交换x,y的。...为了方便说明,我们用图来展示参数是如何进行的。...从图中清楚地发现,在函数的调用过程中实现的是main()函数里参数x和y的,即把main()函数里参数x和y的传递给swap函数里x和y,swap()函数中的x和y拥有自己的存储空间,所以接下来在...图中可以清楚地发现,在函数的调用过程中实现的是参数x和y的,即把x和y存储单元的地址传递给px和py,swap()函数中的形参不再拥有自己的存储空间,它们分别指向x和y的存储单元,所以接下来在swap...这也是在采用的时候修改形参也会影响实参的原因。 通过以上实例是不是就能很容易理解C语言的

    46810

    5分钟搞懂C语言的

    补全下面的函数使其交换x,y的。...为了方便说明,我们用图来展示参数是如何进行的。...[640 (2).png] 从图中清楚地发现,在函数的调用过程中实现的是main()函数里参数x和y的,即把main()函数里参数x和y的传递给swap函数里x和y,swap()函数中的x和y拥有自己的存储空间...[640 (4).png] 图中可以清楚地发现,在函数的调用过程中实现的是参数x和y的,即把x和y存储单元的地址传递给px和py,swap()函数中的形参不再拥有自己的存储空间,它们分别指向x和y的存储单元...这也是在采用的时候修改形参也会影响实参的原因。 通过以上实例是不是就能很容易理解C语言的,有什么问题欢迎留言。

    62681

    PHP 函数引用的区别

    函数引用的区别 ---- : 默认情况下, 函数参数通过传递, 所以即使在函数内部改变参数的也不会改变函数外部的 站长源码网 引用 : 就是在函数的参数前面添加 & 符号, 表示函数参数必须为引用地址..., 不能是一个具体的, 在函数内部对该参数所做操作会应用函数外部的该变量 引用传递官方手册 : https://www.php.net/manual/zh/language.references.pass.php...引用举例 ---- 的函数 $abc = 'Hello World'; echo $abc . ''; //Hello World echo strtolower($abc) ....''; //Hello World 引用的函数 echo ''; $arr = [3, 1, 2]; var_dump($arr);//[3, 1, 2] sort($arr); var_dump...where * @param array $keys * @return array */ function where_filter(array $where, &$keys) { // 去掉数组里的空

    3.2K20

    php引用详解

    php的引用(就是在变量或者函数 、对象等前面加上&符号) 在PHP 中引用的意思是:不同的名字访问同一个变量内容....php $a="ABC"; $b =&$a; echo $a;//这里输出:ABC echo $b;//这里输出:ABC $b="EFG"; echo $a;//这里$a的变为EFG 所以输出EFG...> 函数的调用 调用我就不多说了 下面直接给出代码 function test(&$a){ $a=$a+100; } $b=1; echo $b;//输出1 test($b);...为1 $a=5; $a=test();//这条语句会输出 $b的 为2 $a=&test();//这条语句会输出 $b的 为3 $a=5; $a=test();//这条语句会输出 $b的 为6..., 他的作用是 将return $b中的 $b变量的内存地址与$a变量的内存地址 指向了同一个地方 即产生了相当于这样的效果($a=&b;) 所以改变$a的 也同时改变了$b的 所以在执行了 $a=

    5.2K20

    地址

    很多语言在参的时候都有一个地址(或者是引用)的问题,我想用 C++ 语言来简单的描述一下。...因为我觉得无论是还是,C 或者 C++ 这两种语言都是能够比较直观的描述清楚的语言,原因是可以容易的去观察内存。其他语言也可能可以,只是其他语言的我不太知道如何去做。...对于第一段和第二段代码在 C++ 中称为,对于第三段和第四段代码在 C++ 中称为地址。地址和在内存中本身都是一个,只是具体分类是做了区别而已。...NO.6 Java 参 Java 中说的参全部是,但是当形参是一个对象的时候,其实相当于的是一个地址。因为变量中本身就保存的是一个地址,而不是一个。...参时,也是把堆空间的地址传给了形参。Java 的堆和栈,是由 JVM 管理和维护。 End

    2.3K40

    php引用的区别点总结

    php:在函数范围内,改变变量值得大小,都不会影响到函数外边的变量值。 PHP引用:在函数范围内,对的任何改变,在函数外部也有所体现,因为引用的是内存地址。 :和copy是一样的。...php $testa=1; //定义变量a $testb=2; //定义变量b $testb = $testa; //变量a赋值给变量b echo...引用:类似于C语言的指针了,感觉差不多。打个比方,我有一橦房子,我给你一把钥匙,我们二个都可以进入这个房子,你在房子做什么都会影响到我。 <?...php $param2=1; //定义变量2 $param1 = &$param2; //将变量2的引用传给变量1 echo $param2; //显示为1...【优缺点:】会很耗时间,特别是对于大型的字符串和对象来说,这将会是一个代价很大的操作,传送引用,函数内的任何操作等同于对传送变量的操作,传送大型变量时效率高!

    2.7K51
    领券