网络游戏开发语言c程序设计第014讲函数

网络游戏开发语言c程序设计第014讲函数

ID:40280930

大小:321.51 KB

页数:22页

时间:2019-07-30

网络游戏开发语言c程序设计第014讲函数_第1页
网络游戏开发语言c程序设计第014讲函数_第2页
网络游戏开发语言c程序设计第014讲函数_第3页
网络游戏开发语言c程序设计第014讲函数_第4页
网络游戏开发语言c程序设计第014讲函数_第5页
资源描述:

《网络游戏开发语言c程序设计第014讲函数》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、网络游戏开发语言基础-C++程序设计专业教程理论讲解部分Ver3.1第014课函数概述:引用的概念和应用递归调用数组做为参数的使用重点:难点:递归调用引用的应用递归调用5函数第014课函数5.4引用5.4.1引用变量的说明引用变量的说明格式与指针变量说明相似:类型名&变量名=对象变量名;与指针说明的区别是:用符号‘&’代替符号‘*’。赋初值部分不可缺省。例如:intsize=5,color;int&refs=size;int&refc=color;5函数第014课函数引用类型不能组成数组.引用类型不能定义指针。5.4.2引用类型的使用限制5函数第014课函数引用型

2、参数在函数被调用时,相应的实参必须是对应类型的变量或对象.在调用函数体运行前,生成该实参的引用变量.在整个函数体运行过程中,这个引用变量相当于作为实参的变量或对象的别名,直到函数调用结束返回.5.4.3引用型参数把函数的参数说明为某一类型(或类)的引用类型,意味着这个参数为“变量参数”,称为引用调用。在使用时要注意:第014课函数5函数它可以把函数外的变量以别名的形式引入到函数体内参加运算,非常方便,这种方式比用指针解决这个问题更合理。它不必在调用时创建与实参变量或对象对应的值参数变量,当实参变量或对象占用内存较多时,这可以节省内存。用指针也可以实现类似于引用调用

3、的效果,但由于指针可以改变内容,任意赋值,因此它不如引用型参数安全。引用型参数的优点是:第014课函数5函数当把函数的返回类型说明为引用型时,这个函数返回的不仅仅是某一变量或对象的值,而且返回了它的“别名”。引用型返回类型的函数调用就是一种左值表达式,可以作为值,也可被赋值:5.4.4引用型的函数返回值inta=3,b=5,c;int&maxr(int&m,int&n){if(m>n)returnm;returnn;}此时函数可以这样调用:maxr(a,b)++;第014课函数5函数5.5函数的声明在主调函数中调用某函数之前应对该被调函数进行说明,这与使用变量之前

4、要先进行变量说明是一样的。在主调函数中对被调函数作说明的目的是使编译系统知道被调函数返回值的类型,以便在主调函数中按此种类型对返回值作相应的处理。其格式:类型说明符函数名(类型形参,类型形参…);第014课函数5函数C语言中曾规定如果被调函数的返回值是整型或字符型时,可以不对被调函数作说明,而直接调用。这时系统将自动对被调函数返回值按整型处理。当被调函数的函数定义出现在主调函数之前时,在主调函数中也可以不对被调函数再作说明而直接调用。如在所有函数定义之前,在函数外预先说明了各个函数的类型,则在以后的各主调函数中,可不再对被调函数作说明。对库函数的调用不需要再作说明

5、,但必须把该函数的头文件用include命令包含在源文件前部。在以下几种情况时可以省去主调函数中对被调函数的函数说明。第014课函数5函数C语言中不允许作嵌套的函数定义。因此各函数之间是平行的,不存在上一级函数和下一级函数的问题。但是C语言允许在一个函数的定义中出现对另一个函数的调用。这样就出现了函数的嵌套调用。即在被调函数中又调用其它函数。这与其它语言的子程序嵌套的情形是类似的。5.6函数的嵌套调用第014课函数5函数5.7函数的递归调用一个函数在它的函数体内调用它自身称为递归调用。这种函数称为递归函数。C语言允许函数的递归调用。在递归调用中,主调函数又是被调函

6、数。执行递归函数将反复调用其自身。为了防止递归调用无终止地进行,必须在函数内有终止递归调用的手段。常用的办法是加条件判断,满足某种条件后就不再作递归调用,然后逐层返回。第014课函数5函数#include"stdio.h" longff(intn){longf;if(n<0)printf("n<0,inputerror");elseif(n==0

7、

8、n==1)f=1;elsef=ff(n-1)*n;return(f);}用递归法计算n!n!可用下述公式表示:n!=1(n=0,1) n!=n×(n-1)!(n>1)第014课函数5函数voidmain(){intn;

9、longy;printf("inputaintegernumber:");scanf("%d",&n);y=ff(n);printf("%d!=%ld",n,y);}第014课函数5函数递归函数的价值在于,可以在预先不知道数据的多少和规模时,按照一定的访问规律遍历所有的数据.递归函数的应用场合,像对文件目录和文件的遍历访问,在游戏中对模型文件中数据的读取等等.第014课函数5函数5.8数组作为函数参数5.8.1数组元素作函数实参数组用作函数参数有两种形式,一种是把数组元素(下标变量)作为实参使用;另一种是把数组名作为函数的形参和实参使用。数组元素就是下标变量,

10、它与普通变

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

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

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