欢迎来到天天文库
浏览记录
ID:57494899
大小:46.50 KB
页数:8页
时间:2020-08-24
《参数传递和作用域.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、参数传递一般有三种形式:传值调用:特点:形参的改变不影响实参函数多为有返回值的形式。参数:形参为变量,实参可以是与形参同类型的变量、常 量或表达式传址调用:特点:形参所指内容的改变会影响实参地址所指向的内 容,但形参地址的改变对实参没有影响。参数:形参为指针变量或数组,实参可以是与形参同类型 的指针变量、变量的地址或数组名。引用调用:特点:形参的改变直接影响实参的内容。参数:形参为引用,实参为与形参同类型的变量函数f有两个参数,分别为整型变量a和b的相应形式,则在以下不同的传递形式下,形参和实参的对应关系
2、如下:传值调用:定义形式:intf()调用形式:x=f(a,b);//x是已定义的整型变量,存放函 数调用的结果。传址调用:定义形式:voidf()调用形式:;引用调用:定义形式:voidf()调用形式:f();inta,intbf(&a,&b)int&a,int&ba,bint*a,int*b数组名做参数是传址调用,形参数组和实参数组是同一个数组,故形参数组内容的改变就等于改变了实参数组.假设有定义inta[10];则该数组做参数的对应实参、形参形式如下:(数值型数组的用法)定义形式:voidf()//数组长度作为
3、第二个参数调用形式:假设有定义chars[100];则该数组做参数的对应实参、形参形式如下:(字符型数组的用法)inta[],intnf(a,10)定义形式:voidf()//数组长度不必指定调用形式:chars[]f(s)#include"iostream.h"voidfun(int&a,int*b,int*c,intd){intk=100;a=a*2;*b=*b*2;c=&k;*c=*c*2;d=d*2;}voidmain(){intw=1,x=1,y=1,z=1;fun(w,&x,&y,z);cout<<"w=
4、"<5、++;j++;cout<6、oidcube(int*x){*x=(*x)*(*x)*(*x);}voidmain(){intx=5;cube(&x);cout<7、n(){intx=5;cube(&x);cout<
5、++;j++;cout<
6、oidcube(int*x){*x=(*x)*(*x)*(*x);}voidmain(){intx=5;cube(&x);cout<7、n(){intx=5;cube(&x);cout<
7、n(){intx=5;cube(&x);cout<
此文档下载收益归作者所有