- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第七章函数2研究资料
C语言程序设计;Contents;模块化程序设计
函数的定义与调用
函数的参数
函数的返回值
被调函数的声明
;函数间的参数传递;1 函数的参数
函数的参数有形参和实参两种,形参是出现在函数定义中,在整个函数体内部都有效,离开该函数则无意义。实参是出现在主调函数中,其作用是把实参的值传递给被调函数的形参,从而实现主调函数向被调函数传递数据的功能。
;实参 ;实参与形参 参数传递;1、实参与形参:个数相同、类型一致、按顺序传递
2、实参 - 形参,值传递
单向 形参值的变化不会影响实参的值
实参和形参可以同名; 函数调用 流程
a、为被调函数的局部变量(包括定义的变量和形参)开辟存储单元。
b、将实际参数的值复制给形式参数。
c、流程从主调函数的调用处转移到被调函数,执行被调函数体中的语句序列。
d、当执行到被调函数的“return (表达式);”语句时,将表达式的值返回到主调函数的调用处,即以该表达式的值作为函数值替换“函数名(实际参数表)”,结束被调函数的执行;如无return语句,则遇函数体的右花括号“}”也结束被调函数的执行。
e、释放局部变量的存储单元,流程从被调函数转移到主调函数的调用处。
f、继续从主调函数的调用处向下执行。 ; 一、普通变量作为 函数实参 ;swap函数的功能是交换两个参数的值。从上面运行结果可以看出,交换了两个形参变量a和b的值,而main函数中实参x和y的值没有交换,这是因为实参向形参的数据传递是单向的,因而形参值的改变不会影响实参。; 二、数组元素作为 函数实参 ; 数组元素的实质与普通变量相同,因此用数组元素作为函数的实参与普通变量作为函数实参一样,都是把值传递给形参,即单向值传递。;值传递;;
void fun(int a[2]) /*函数定义*/
{
int c;
c=a[0];a[0]=a[1];a[1]=c; /*交换a[0]与a[1]的值*/
}
main()
{
int x[2]={3,5};
fun(x); /*函数调用*/
printf(x[0]=%d,x[1]=%d\n,x[0],x[1]);
}; 数组名作实参其实质就是将实参数组的首地址传给形参的数组名,这样形参数组就获得实参数组的首地址,使得形参数组和实参数组为同一个数组,共同拥有一段??储空间。当函数结束时,形参数组内容的改变影响实参数组的内容。 ;地址传递 ;实验9: 函数定义与调用(1);合肥师范学院公共计算机教学部
;*
您可能关注的文档
最近下载
- 质押合同书通用版范本6篇.docx VIP
- 中医中药湿敷课件PPT最新完整版本.pptx VIP
- 一种柔性储能器件及其制备方法与应用.pdf VIP
- 2024年全国职业院校技能大赛GZ107 手工艺术设计赛项规程以及手工艺术设计赛题1-10套.docx VIP
- 身边的标识(教案)湘美版(2024)美术一年级上册.docx VIP
- 地理人教版八年级上册我国气候南北差异.pptx VIP
- 工程的施工质保体系.docx VIP
- (高清版)B-T 19634-2021 体外诊断检验系统自测用血糖监测系统通用技术条件.pdf VIP
- 电视新闻直播语言研究以中央电视台为例.docx VIP
- 热力管道工程质量通病和防治.docx VIP
文档评论(0)