- 1、本文档共42页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C语言言程序序设计项目教教程
项目六共分为两个任务
项目六项目六 函数数
————实现程序模块化设计的好帮手实现程序模块化设计的好帮手
任务一 学习函数的基础知识
任务二 深入学习函数知识
任务一 学习函数的基础知识
任务说明任务说明
在本任务中我们来学习函数的基本概念以及定义、声明和调用
函数的方法函数的方法。。
预备知识
一、、函数的基本概念函数的基本概念
二、函数的声明和定义
三三、函数的调用函数的调用
一、函数的基本概念
一个个CC语言程序可以由若干个函数构成语言程序可以由若干个函数构成,但其中只能有但其中只能有一个主函数个主函数
main()。程序总是从主函数开始执行,它由系统调用,程序运行过程
中主中主函数数又调用其他用其他函数数,其他其他函数之间也数之间也可以相相互调用用。
二、函数的声明和定义
((一))函数声明和函数原型函数声明和函数原型
与使用变量相同,在调用函数之前,必须事先声明该函数的返回
值和参数类型值和参数类型。。但当函数的定义在调用之前时但当函数的定义在调用之前时,,可以省略函数的声明可以省略函数的声明。。
一般来说,比较好的程序书写顺序是:先声明函数,然后写主
函数,接着再写那些自定义的函数。
(二)函数定义
一个完整的函数定义个完整的函数定义,如下所示如下所示:
函数返回值类型 函数名(参数表)
{{
语句体;
}
参数列表由0个或多个参数组成,写在函数名后面的圆括号内,用
可以是项目二中提及的任何数据类型、函数名通常用一个能反映函数功能函数体是实现函数功能的主体部分,的单词表示,且在程序中必
于向函数传送数值或从函数带回数值。参数列表内给出的每 个参数都
于向函数传送数值或从函数带回数值 参数列表内给出的每一个参数都
须是唯一的。它必须要符合标识符命某个数据类型的指针、指向结构的指针、一般是一条复合语句,用花括号括起来,名规则,由字母、数字和下划
要指出其类型和参数名。根据参数列表中给出的参数的个数,函数可分
线组成线组成指向数组的指针指向数组的指针中间可以是中间可以是。。函数名后面必须跟函数名后面必须跟一条或若干条语句条或若干条语句一对括号对括号。。 ,,用来与其他标识符区分开用来与其他标识符区分开。。
为无参函数和有参函数为无参函数和有参函数。当参数个数多于当参数个数多于11个时个时,参数之间用逗号隔开参数之间用逗号隔开。
(三)函数的参数
定义函数时定义函数时,函数名后面括号中的变量名称为函数名后面括号中的变量名称为形式参数形式参数 ((简称形简称形
参)。调用函数时,函数名后面括号中的参数(或表达式)称为实际参
数 (简称实参)。形参和实参用于实现主调函数与被调函数之间数据的
传递。
使用形参与实参时,需要注意以下几点:
①① 实参必须有确定的值实参必须有确定的值;
② 形参必须指定类型;
③ 形参与实参类型要一致,个数要相同;
④④ 若形参与实参类型不若形参与实参类型不一致致,,在函数调用时在函数调用时,,实参将自动按形参类实参将自动按形参类
型转换;
⑤⑤ 形参在函数被调用前不占内存形参在函数被调用前不占内存;函数调用时为形参分配内存函数调用时为形参分配内存;调调
用结束,内存释放。
参数的传递有值传递和地址传递两种方式,其意义如下:
①① 值传递方式值传递方式
在函数调用时,首先计算出实参表达式的值,然后给对应的形参
变量分变量分配存储单存储单元,并将实参的值复制到并将实参的值复制到形参的存储空间中参的存储空间中;调用结用结
束,形参单元被释放,实参单元仍保留并维持原值。
形参与实参占用不同的内存单元,在函数执行过
程中形参的变化不会影响实参的值程中形参的变化不会影响实参的值。
②② 地址传递方式地址传递方式
采用地址传递方式,实参和形参必须是地址常量或变量。在函数
调用时,将数据的存储地址作为参数传递给形参,形参与实参占用同
样的存储单元,因此,被调函数对形参做的任何
文档评论(0)