版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、参数传递一般有三种形式:参数传递一般有三种形式:传值调用:传值调用:特点:形参的改变不影响实参特点:形参的改变不影响实参函数多为有返回值的形式。函数多为有返回值的形式。参数:形参为变量,实参可以是与形参同类型的变量、常参数:形参为变量,实参可以是与形参同类型的变量、常量或量或表达式表达式传址调用:传址调用:特点:形参所指内容的改变会影响实参地址所指向的内特点:形参所指内容的改变会影响实参地址所指向的内容,容,但形参地址的改变对实参没有影响。但形参地址的改变对实参没有影响。参数:形参为指针变量或数组,实参可以是与形参同类型参数:形参为指针变量或数组,实参可以是与形参同类型的指的指针变量、变量的地
2、址或数组名。针变量、变量的地址或数组名。引用调用:引用调用:特点:形参的改变直接影响实参的内容。特点:形参的改变直接影响实参的内容。参数:形参为引用,实参为与形参同类型的变量参数:形参为引用,实参为与形参同类型的变量1;.函数函数f f有两个参数有两个参数, ,分别为整型变量分别为整型变量a a和和b b的相应形式,则在以下不同的传递形式下,的相应形式,则在以下不同的传递形式下,形参和实参的对应关系如下:形参和实参的对应关系如下:传值调用:传值调用:定义形式:定义形式: int f ( )int f ( )调用形式:调用形式: x=f(a, b) ;/xx=f(a, b) ;/x是已定义的整型
3、变量,存放函是已定义的整型变量,存放函数调用的结果。数调用的结果。传址调用:传址调用:定义形式:定义形式: void f( )void f( )调用形式:调用形式: ; ;引用调用:引用调用:定义形式:定义形式: void f( )void f( )调用形式:调用形式: f( ) ;f( ) ;int a, int bf(&a, &b)int &a, int &ba, bint *a, int *b2;.数组名做参数是传址调用,形参数组和实参数组是同一个数组,故形参数组内容的改数组名做参数是传址调用,形参数组和实参数组是同一个数组,故形参数组内容的改变就等于改变
4、了实参数组变就等于改变了实参数组假设有定义假设有定义int a10;则该数组做参数的对应实参、形参形式如下:则该数组做参数的对应实参、形参形式如下:(数值型数组的用数值型数组的用法)法)定义形式:定义形式: void f( )/void f( )/数组长度作为第二个参数数组长度作为第二个参数调用形式:调用形式:假设有定义假设有定义char s100;char s100;则该数组做参数的对应实参、形参形式如下:则该数组做参数的对应实参、形参形式如下:( (字符型数组的用字符型数组的用法)法)int a ,int nf(a, 10)定义形式:定义形式:void f( )/void f( )/数组长
5、度不必指定数组长度不必指定调用形式:调用形式: char s f(s)f(s)3;.#include iostream.hvoid fun(int &a,int *b,int *c,int d )int k=100;a=a*2;*b=*b*2;c=&k;*c=*c*2;d=d*2;void main()int w=1,x=1,y=1,z=1; fun(w,&x,&y,z); coutw=wnx=xny=ynz=zendl;4;.关于变量的作用域和存储类别:关于变量的作用域和存储类别:、静态变量和全局变量若没有初始化,则其初值为,、静态变量和全局变量若没有初始化,
6、则其初值为,而自动变量若没初而自动变量若没初始化,则其初值不确定。始化,则其初值不确定。、静态变量只在第一次调用函数的时候初始化一次静态变量只在第一次调用函数的时候初始化一次, ,而而动态变量每调用一动态变量每调用一次函数次函数, ,便初始化一次。便初始化一次。、当全局变量和局部变量同名时、当全局变量和局部变量同名时, ,局部变量起作用局部变量起作用、全局变量一旦改变,后续操作使用的都是改变了的值、全局变量一旦改变,后续操作使用的都是改变了的值5;.静态变量只初始化一次静态变量只初始化一次, ,而动态变量每调用一次函数而动态变量每调用一次函数, ,便初始化一次。便初始化一次。 void tes
7、t() int i=0; static int j=0; i+;j+; coutijendl; void main() int i; test(); test(); i=1,j=1i=1,j=26;.当全局变量和局部变量同名时当全局变量和局部变量同名时, ,局部变量起作用局部变量起作用 int m=10; void a(int n) n=15/n; m=m/2; void main() int n=3; a(n); cout“n=“n“,m=“mendl; n=3,m=57;.void cube(int x)x=x*x*x;void main()int x=5;cube(x); coutxendl; 传值调用,无返回值传值调用,无返回值void cube(int *x)*x=(*x)*(*x)*(*x); void main()int x=5;cube(&x); coutxendl; void int x=5;void cube( )x=x*x*x; void main()cube(); coutxendl; 无参函数,全局变量无参函数,全局变量void cube(int &x) x=x*x*x; void main()int x=5; cube(x); coutxendl; 传址调用
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 江西师范高等专科学校《商业空间展示》2023-2024学年第一学期期末试卷
- 嘉兴学院《设计图学》2023-2024学年第一学期期末试卷
- 衡阳幼儿师范高等专科学校《俄语视听说一》2023-2024学年第一学期期末试卷
- 淄博师范高等专科学校《室内设计原理》2023-2024学年第一学期期末试卷
- 重庆资源与环境保护职业学院《软件项目管理与工程经济学实践》2023-2024学年第一学期期末试卷
- 浙江师范大学行知学院《笔译实务》2023-2024学年第一学期期末试卷
- 郑州铁路职业技术学院《抽样技术与应用(实验)》2023-2024学年第一学期期末试卷
- 长春信息技术职业学院《宪法学》2023-2024学年第一学期期末试卷
- 玉林师范学院《MATLAB语言及应用》2023-2024学年第一学期期末试卷
- 使用网格搜索进行超参数调优
- 航空工程材料(第3版)课件 6有色金属
- 印刷厂厂长年终小结
- MOOC 工程图学-天津大学 中国大学慕课答案
- 园林景观工程关键施工技术、措施
- 谈谈微电影创作课件
- 《变革管理》课件
- 各元素离子半径
- 小学五年级数学上册寒假作业天天练30套试题(可打印)
- 地下管道三维轨迹惯性定位测量技术规程
- 特种设备锅炉日管控、周排查、月调度主要项目及内容表
- 浅谈如何提高小学生计算能力讲座课件
评论
0/150
提交评论