- 1、本文档共31页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
ch7-4变量与函数详解
* * 务必牢记:把局部变量改变为静态内部变量后,改变了它的存储方式,即改变了它的生存期。把外部变量改变为静态外部变量后,改变了它的作用域,限制了它的使用范围。因此,关键字“static”在不同的地方所起的作用是不同的。 * * * 第七章 * * 变量的作用域:指一个变量有效的作用范围。 7.4.1 局部变量与全局变量 7.4 变量与函数 局部变量:是指定义在一个程序块(函数)中的变量,它的作用范围只是定义它的程序块。 局部变量的定义位置及作用域 ①在函数体的开始处 ②在复合语句的开始处 注:局部变量一旦定义,系统就为其分配相应的内存空间,在本程序执行结束时,系统就会收回其占用的空间。 float f1(int a) { int b,c; ……. } char f2(int x,int y) { int i,j; …… } main() { int m,n; ……. } a,b,c有效 x,y,i,j有效 m,n有效 * * 7.4.1 局部变量与全局变量 对局部变量的补充说明 (1)不同函数中的变量可以同名,它们互不影响,因为它们的作用范围不同,占用不同的内存单元。 (2)形式参数也属于局部变量。 (3)局部变量规则同样适合于main函数,也就是说,main函数中定义的变量也只能在main函数中有效,并不会因为是“主函数”而有什么特殊性。 (4)main函数中,不能引用其他函数中定义的局部变量。 * * 局部变量相关实例 例: 复合语句中变量 #define N 5 void main() { int i; int a[N]={1,2,3,4,5}; for(i=0;iN/2;i++) { int temp; temp=a[i]; a[i]=a[N-i-1]; a[N-i-1]=temp; } for(i=0;iN;i++) printf(%d ,a[i]); } 7.4.1 局部变量与全局变量 运行结果:5 4 3 2 1 例:不同函数中同名变量 void main() { int a,b; a=3; b=4; printf(main:a=%d,b=%d\n,a,b); sub(); printf(main:a=%d,b=%d\n,a,b); } sub() { int a,b; a=6; b=7; printf(sub:a=%d,b=%d\n,a,b); } 运行结果: main:a=3,b=4 sub:a=6,b=7 main:a=3,b=4 * * 局部变量的初始值与初始化 ①自动变量定义时所分配的存储单元中原来存放的值就是该变量的初始值,是一个不确定的值,所以,变量必须先赋值,后引用。 ②所谓变量的初始化就是在定义变量的同时,给该变量一个确定的值 7.4.1 局部变量与全局变量 * * 全局变量(外部) :是指在任何函数之外定义的变量。 有效范围:全局变量的使用不局限于某一个函数,而是从定义变量的位置开始到本源文件结束,及有extern声明的其它源文件. 外部变量声明: extern 数据类型 变量表; 外部变量定义与外部变量声明不同 若外部变量与局部变量同名,则外部变量被屏蔽,失去作用 7.4.1 局部变量与全局变量 定义 声明 次数: 只能1次 可说明多次 位置: 所有函数之外 函数内或函数外 分配内存: 分配内存,可初始化 不分配内存,不可初始化 * * 全局变量的初始值 (1)全局变量在编译阶段分配内存,在执行阶段不释放 (2)全局变量只进行一次初始化,并且只能用常量 (3)如果程序中没有给全局变量初始化,系统自动置0 全局变量的作用 增加函数间数据的联系通道以及数据共享。表现在: (1)如果在一个程序的开始处定义了全局变量,则这个程序中的所有函数都能引用全局变量,在一个函数中改变了全局变量的值,其他函数中就可以访问这个改变了的变量,相当于多了一个数据传递的通道。 (2)由于函数的调用只能带回一个返回值,在需要带回两个以上的结果时,可以使用全局变量。 7.4.1 局部变量与全局变量 * * 实
您可能关注的文档
- CATIA实用教程PPT教案详解.ppt
- 1500立方小时某填料吸收塔的设计环境工程原理课程设计大型作业.doc
- 150101工作面运输顺槽轨道联络巷掘进安全技术措施.doc
- 15.问题快速响应.ppt
- 150102回风顺槽调整轨道安全技术措施.doc
- 150102运输顺槽调整轨道安全技术措施.doc
- 150102综采面防灭火设计.doc
- 150102面启封后预防自燃发火安全技术措施.doc
- 1501采煤工作面初次放顶安全措施.doc
- 1505051008邮政储汇业务员初级试卷正文.doc
- 考前重点速记-化学选择性必修3RJ-金考卷单元双测卷.pdf
- 三年(2022-2024)中考物理真题分类汇编(全国)专题09 运动和力(原卷版).docx
- 2025年高考物理二轮复习二十二大专项专题强化专练(含解析)五:双星及多星模型(含解析).docx
- 考前重点速记-化学选择性必修2LK-金考卷单元双测卷.pdf
- 休闲男装店面经理年度述职报告.pptx
- 商务正装服装店店长年度述职报告.pptx
- 商务正装服装店陈列师年度述职报告.pptx
- 考前重点速记-化学选择性必修3LK-金考卷单元双测卷.pdf
- 考前重点速记-化学选择性必修3SJ-金考卷单元双测卷.pdf
- 休闲男装店长年度述职报告.pptx
最近下载
- 14BJ15-1 -人防工程防护设备优选图集.pdf
- PEP版英语三年级下册课件Unit 5《Old toys》Part B(3)Read and write.pptx VIP
- 2025年江苏农林职业技术学院单招职业倾向性测试题库附答案(培优a卷).docx VIP
- 轴流式多级降压抗气蚀调节阀.ppt
- XBG--911(一)建筑抗震构造图集.pdf
- 弘扬雷锋精神争做时代先锋PPT.pptx VIP
- 9.1 日益完善的法律体系 课件(共23张PPT)——初中道德与法治统编版(2024)七年级下册教学课件.pptx VIP
- 2020年重庆一中中考物理三模试卷(附答案详解).pdf VIP
- Unit 2 Expressing yourself Part C (课件)-2024-2025学年人教PEP版英语三年级下册.pptx VIP
- 五十六个民族之京族介绍.pptx VIP
文档评论(0)