- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
变量的生存周期 【例6-16】在一个文件中声明全局变量。 int min(int a,int b); void main() { extern gx,gy; /* 声明全局变量gx,gy */ printf(%d\n,min(gx,gy)); } int gx=22,gy=11; /* 定义全局变量gx,gy */ int min(int a,int b) { int c; c=ab?a:b; return(c); } 自动变量和寄存器变量属于动态存储方式, 外部变量和静态变量属于静态存储方式。 C语言程序设计与项目实践 清华大学出版社 模块化与团队协作 ———模块化程序设计 项目6 回顾 函数的结构包括:返回值类型、函数名、参数列表、函数体 函数的调用 函数的参数传递 目标 掌握变量的作用域范围 理解外部函数与内部函数 预习检查 什么叫作用域 内部函数与外部函数 项目任务 任务6-2、多人协作完成一个任务 1、如何实现多人合作开发 2、如何实现数据与函数的共享。 变量的作用域与可见性 变量的作用域是指一个范围,是一个标识符在程序正文中有效地区域。从代码空间的角度考虑问题,它决定了变量的可见性。 作用域有:函数原型作用域、块作用域(局部作用域)、函数作用域(局部作用域)、文件作用域(全局作用域), 根据变量的作用域范围,我们将变量分为局部变量(local variable)、全局变量(global variable)。 程序中变量也有不同的使用范围,称为变量的作用域。变量的作用域决定变量的可访问性 变量的作用域 void display() { float discount; . . . . . . . . . } 局部变量:不能在函数外使用 float discount; void main() { . . . . . . } void display() { . . . . . . } 全局变量:可以在整个程序中使用 局部变量 所谓“局部变量”是指在一定范围内有效的变量。在C语言中,在以下各位置定义的变量均属于局部变量,其作用域也不同。 (1)、在函数体内定义的变量,在本函数范围内有效,即其作用域只局限在本函数体内。 (2)、有参函数中的形式参数也是局部变量,只在其所在的函数范围内有效。 (3)、在函数原型声明时形式参数的作用域范围就是函数原型作用域。 (4)、在复合语句内定义的变量,仅在本复合语句范围内有效,也称为块作用域。 int f2(int x) { int y,z; …… } double Area(double radius); void main(){ int s,a; …… { int b; s=a+b; …… /*b作用域*/ } …… /*s,a作用域*/ } 局部变量 【例6-9】各函数局部变量同名的应用例子。 void main() { int i; //函数内的局部变量 i=5; { int i; //定义局部变量,具有块作用域 i=7; printf(i=%d\n,i); } printf(i=%d\n,i); printf(fun1:%d,i=%d\n,fun1(i),i);//调用函数 fun2(i);//调用函数 printf(i=%d\n,i); } void fun2(int i) //引用参数i { int x=5; i=x*i; } int fun1(int x) //x 值参 { int i=5; //函数内局部变量i i=x*i; return i; } 全局变量 全局变量声明在函数的外部,因此又称外部变量,其作用域一般从变量声明的位置起,在程序源文件结束处结束。 全局变量作用范围最广,甚至可以作用于组成该程序的所有源文件。 当将多个独立编译的源文件链接成一个程序时,在某个文件中声明的全局或函数,在其他相链接的文件中也可以使用它们,但是用前必须进行extern外部声明。extern可以置于变量或者函数前。 全局变量与局部变量的比较 #include stdio.h void addNumbers() { int m,n,sum; printf(\n 请输入两个数:); scanf(%d %d,m,n); sum=
您可能关注的文档
最近下载
- 高电压技术(第3版)吴广宁课后习题答案解析.docx VIP
- 日常生活能力量表(ADL)量表.docx VIP
- 《旅行社计调业务》第六章 入境接待计调业务.pptx VIP
- 酒泉市肃州区土壤养分评价及耕地快速培肥地力技术.pdf VIP
- 认知设计:提升学习体验的艺术(原书第2版).pdf VIP
- 一类二类三类医疗器械分类目录大全-20211128093006.docx VIP
- 3-2-3数据交换技术课件人教_中图版高中信息技术必修2.pptx VIP
- 计算机网络(谢希仁第七版)考试知识点整理.docx VIP
- 2025新人教版七年级英语下册Unit 1 Section A第一课时课件.pptx VIP
- 2023年四川省公需科目(数字经济与驱动发展)考试题库及答案.pdf VIP
文档评论(0)