- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第三讲-函数.ppt
第三讲 函数 函数的介绍 函数的调用 内联函数 函数的重载 函数模板 系统函数 函数的介绍 函数的定义 函数原型 函数的参数 函数的返回值 函数的定义 一个较大的程序一般应分为若干个程序模块,每个模块实现一定的功能,在程序设计中,将一些常用的功能模块编写成函数放在函数库中供公共选用。 函数定义的一般形式 type 函数名(参数表) { 说明部分 语句 } 其中,参数表可以为空,函数体可以为空。 一个C程序由一个或多个源文件组成,一个源文件由一个或多个函数组成,系统在编译时以源文件为单位,而不是以函数为单位。 控制台C程序的执行从main函数开始,在main函数中结束;窗口化的C程序和C++程序的执行从WinMain函数开始执行 所有函数都是同级别的,函数之间不能嵌套定义但是可以嵌套调用。 从用户的角度看,函数有两种:(1)标准函数,即库函数,由系统提供。(2)用户自定义函数。 函数原型 在C++中,要使用库函数,只需将库函数所在的头文件包含进来,而要使用用户自定义的函数,必须作三件事: (1)提供函数原型。 (2)提供该函数的定义。 (3)在程序中调用该函数。 例如: #include iostream.h int max(int,int); //函数原型 //也可以这样声明:int max(int v1,int v2); //或: int max(int x,int y); main() { int a,b; cinab; coutmax is: max(a,b)endl; return 0; } int max(int x,int y) { return (x=y? x:y); } 函数的参数 参数传递机制 默认参数 参数传递机制 在多数情况下,主调函数和被调函数之间有参数传递关系。定义函数时,函数名后面括弧中的变量名称为“形式参数”。调用函数时,函数名后面括弧中的表达式称为“实际参数”。(以comdiv和commul为例) 默认参数 在函数的参数表中可以为形参指定一个默认参数,当函数调用时,如果给出实参,就用实参初始化形参;如果没有给出实参的值,就使用形参的默认参数。 例如: #include iostream.h int add(int x=0,int y=0,int z=0); main() { int a=10,b=20,c=30; cout***************endl; couta+b+c=add(a,b,c)endl; cout***************endl; couta+b=add(a,b)endl; cout***************endl; return 0; } 默认参数说明 由于实参初始化形参是按从左向右的顺序进行的,所以形参的默认参数必须从右向左顺序定义,也就是说,在有缺省值的形参右边不能出现无缺省值的参数。 默认参数的定义必须出现在函数调用之前才有效,所以默认参数一般在函数原型中定义。 函数的返回值 函数可以有返回值,也可以无返回值,无返回值的函数用关键字void来说明,这时系统保证函数不带回任何值。 有返回值的函数用return语句来返回,一个函数中可以有多个return 语句,返回值的类型必须和函数原型中说明的类型一致,假如没有return语句,系统将返回一个不确定的值。 例如: #include iostream.h int max(int,int); main() { int a,b; cinab; coutmax is: max(a,b)endl; return 0; } int max(int x,int y) { if(x=y) return x; else return y; } 函数返回机制 当函数调用结束时,如果有返回值的话,系统会自动创建一个和返回值类型相同的临时变量,将返回的局部变量的值赋给这个临时变量,释放局部变量,在主调函数中使用临时变量的值,函数调用语句结束时,释放临时变量的空间。 例如: #include iostream.h int add(int,int); main() { int a=10,b=20; cout**********endl; couta=aendl; coutb=bendl; couta+b=add(a,b)endl; cout**********endl; return 0; } int add(int x,int y) { int z; z=x+y; return z; } 函数的调用 函数的一般调用 函数的嵌套调用 函数的递归调用 函数的一般调
您可能关注的文档
- 第三单元-近代西方资本主义政治制度的确立与发展.ppt
- 第三框-统一的多民族国家.ppt
- 第三章--学习动机.ppt
- 第三章--氨基酸、肽和蛋白质.ppt
- 第三章--货币理论与政策-货币需求理论.ppt
- 第三章--连分数及其在天文学上的应用.ppt
- 第三章-11.7-done.ppt
- 第三章-供应链管理方法.ppt
- 第三章-光学成像系统的传递函数.ppt
- 第三章-地球的物理性质和圈层结构.ppt
- 动植物检疫模考试题(附答案).docx
- 数字教育资源开发团队协作中的项目管理与团队冲突管理及解决策略创新研究教学研究课题报告.docx
- 高中物理教学中量子物理与经典物理的对比教学课题报告教学研究课题报告.docx
- 2025年秋季学期小学一年级上册音乐人音版(北京)期末测试卷及答案(三套).docx
- 高中生研究植物生长素运输与细胞凋亡调控关系的课题报告教学研究课题报告.docx
- 国家智慧教育云平台在教育信息化基础设施建设中的应用教学研究课题报告.docx
- 动植物检疫测试题+参考答案.docx
- 初中物理电磁感应在智能恒温器温度控制中的应用实验课题报告教学研究课题报告.docx
- 数字孪生技术在工业0中的实施路径与案例分析课题报告教学研究课题报告.docx
- AI支持的高中化学实验误差分析与教学改进路径课题报告教学研究课题报告.docx
最近下载
- 电气工程施工方案范本(3篇).docx
- 广东省中山一中等六校2025届高三下学期联合考试化学试题含解析.doc VIP
- 广东省中山一中等六校2024届高三压轴卷化学试卷含解析.doc VIP
- “结构主义·转型为鉴”系列之日本篇:转型得与失.pdf VIP
- 综合布线系统双绞线工程检测原始记录表.doc VIP
- SY0031-2012石油工业用加热炉安全规程.docx VIP
- 交直流电力系统的分析和控制.pdf VIP
- 初中英语必背单词2000个(按词性分类带音标).docx
- 统编版五年级下册语文全册教案【三】-统编版五年级下册语文教案-已转换.docx VIP
- 装修监理规划范本样本.doc VIP
原创力文档


文档评论(0)