C语言的变量,就是将系统分配的地址取个别名,所以变量名就是地址。
1. 按值传递时,函数不会访问当前调用的实参,因此本体就不会交换,交换的只是通过函数形参复制过来的值。函数处理的值是它本地的拷贝,这些拷贝被存储在运行栈中,因此改变这些值不会影响实参的值。一旦函数结束了,函数的活动记录将从栈中弹出,这些局部值也就消失了。在按值传递的情况下,实参的内容没有被改变。这意味着程序员在函数调用时无需保存和恢复实参的值。
2. 函数的形参设为指针,然后将指针上对应的数值进行交换,地址上的值就会改变。由于传递的是两个变量的内存地址(指针)使得我们可以直接操作对应的值。
3. 将函数的参数设为指针的引用,只交换指针的数值,实质上的值没有交换。
什么叫做指针的引用,就是给传入函数的指针起个别名,实质上变了名字后还是指针。
版权声明:
本文来源网络,所有图片文章版权属于原作者,如有侵权,联系删除。
本文网址:https://www.mushiming.com/mjsbk/13154.html