您好、欢迎来到现金彩票网!
当前位置:2019欢乐棋牌 > 址传 >

C语言值传递和地址传递 不明白

发布时间:2019-07-27 02:46 来源:未知 编辑:admin

  可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。

  值传递意味着,void main()在调用swap(x,y)时,是将x变量和y变量拷贝了一个副本,然后将副本传给swap作为a变量和b变量。

  传入时,从数值上来讲,有a=x和b=y;但是当a、b的数值发生改变时,x、y的数值是不会变化的。

  它的实际过程是,先分配两个临时变量,a和b,这两个变量和传入的x、y占用不同的地址空间,程序先将x和y的值复制给a和b:

  swap(a = x, b = y),之后在swap中所有的操作都是针对a和b进行的,与x和y无关,所以x和y的值在swap执行后依然保持不变。

  3)地址传递也需要一个中间变量,但是这个中间变量保存的是地址,对于C语言你就需要用到指针变量,它可以保存一个普通变量的地址,通过改变这个地址里的内容就可以改变原变量的值。对于你的程序,如果想在调用swap后,x和y的值被改变,你需要定义成下面的样子:

http://abetterapp.com/zhichuan/362.html
锟斤拷锟斤拷锟斤拷QQ微锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷微锟斤拷
关于我们|联系我们|版权声明|网站地图|
Copyright © 2002-2019 现金彩票 版权所有