形参与实参的传递.doc

形参与实参的传递.doc

ID:58484315

大小:15.50 KB

页数:2页

时间:2020-09-03

形参与实参的传递.doc_第1页
形参与实参的传递.doc_第2页
资源描述:

《形参与实参的传递.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、函数参数——值传递实参和形参必须个数相等,类型一致,顺序对应,进行数据的“单向的值传递”(即实参的值可以传给形参,形参的改变也不影响实参.实参可以是常量,变量,表达式或函数。v指针变量作为函数参数——地址传递特点:共享内存,“双向”传递将数字按从大到小输出:代码一:值传递#includevoidswap(intx,inty){inttemp;temp=x;x=y;y=temp;}voidmain(){inta,b;int*pointer_1,*pointer_2;scanf("%d,%d",&a,&b);pointer_1

2、=&a;pointer_2=&b;if(avoidswap(int*p1,int*p2){inttemp;temp=*p1;*p1=*p2;*p2=temp;}voidmain(){inta,b;int*pointer_1,*pointer_2;scanf("%d,%d",&a,&b);pointer_1=&a;pointer_2=&b;if(a

3、swap(pointer_1,pointer_2);printf("%d,%d",a,b);}结果:输入:5,9输出:9,5指针变量作为函数参数——地址传递特点:共享内存,“双向”传递代码三:地址传递#includevoidswap(int*p1,int*p2){int*p;p=p1;p1=p2;p2=p;}voidmain(){inta,b;int*pointer_1,*pointer_2;scanf("%d,%d",&a,&b);pointer_1=&a;pointer_2=&b;if(a

4、nter_1,pointer_2);printf("%d,%d",*pointer_1,*pointer_2);}结果:输入:5,9输出:5,9代码三的思考:地址传递相当于传递地址的值,实质也可以看做“值传递”,即p1,p2的改变不影响pointer_1,pointer_2的值。自定义函数中形参值交换,相当于只是换了形参的地址,对实参关于形参与实参的这三个实例,三个有所不同,我们一般只会注意到前面两个实例,第三个一般没有注意到,第三个实例要理解到实质上地址传递中传递的也是地址的值,即地址传递实质也是值传递.

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。