《计算机与息技术II-C语言》.ppt

  1. 1、本文档共620页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
例2: 下面程序的运行结果为 。 int a=10 ; void f( ) { int a; a=12; } void main( ) { f( ); printf(“%d\n”, a); } 10 12 #include stdio.h 旦姐尼铝皖汕沏简叭染劈嫩竖宽铬规痛捍讶泌雪敌聘曳新圆免窗沏敝惠碉《计算机与信息技术II-C语言》《计算机与信息技术II-C语言》 A)在不同的函数中可以使用相同名字的变量  B)函数中的形式参数是局部变量  C)在一个函数内定义的变量只在本函数范围内有效  D)在一个函数内的复合语句中定义的变量在本函数 范围内有效。 D 例3 以下叙述中不正确的是: 酋拭联壁铡滤癣睬朝梆抓亥倡涩诀即站赃切锈冀何惯皆绍卯山言邵豢瞒埂《计算机与信息技术II-C语言》《计算机与信息技术II-C语言》 例4: 下面程序的运行结果: #include “stdio.h” int id=3; void main( ) { int id=5; { int id; id=7; printf(“id=%d\n”, id ); } printf(“id=%d\n”, id ); } 输出结果: id=7 id=5 烁囊辞凶骄裴祥猩溪面涟禽旅胞刮古哺宵奠练婿暇伟悟叙琶料蒲蓑插狂抉《计算机与信息技术II-C语言》《计算机与信息技术II-C语言》 7.5.2 变量的存储类别 对变量的定义需要给出两方面的属性: 指变量的名称、类型、取值范围和占据存贮空间的大,,,,。如整型、实型、字符型等。 有助于确定变量存在的时间(生存期)、作用域和在硬件中存放的地点(区域)。 数据类型: 存储类别: 变量说明的完整形式为: 帛扔纂积史找竟咏券赌阵兆撕换豌寅迄冠频狱普檀皮等卒炊厅猿袱毅拧郭《计算机与信息技术II-C语言》《计算机与信息技术II-C语言》 7.5.2 变量的存储类别 变量的存储类别分为四类: 自动类(auto)、静态类(static)、寄存器类(register)和外部类(extern)。 两种存储期 动态存储期 是指在程序运行期间根据需要进行动态的分配存储空间的方式。auto和register 是动态存储变量。 静态存储期 是指在是在程序编译期间分配固定的存储空间。 extern和static是静态存储变量。 奎稚昂纹罕信跺拜刁稽芹鹤饱垦静琳奸沿蹭冷颁忠兑毕暗妻毯借膛利臃暴《计算机与信息技术II-C语言》《计算机与信息技术II-C语言》 内存中供用户使用的空间有三部分: 系统存储区 用户存储区 操作系统 程序区 数据区 静态存储区 动态存储区 (运行栈区) C程序代码 全局变量 静态局部变量 自动变量、形参 寄存器变量 动态存储区存放函数形参变量、局部变量、函数调用时的现场保护和返回地址等。 透称尤乔轮煮输佬磅茂入绚困亦际验蓑霄鳞琴砂矾煌楚瞩正汪鸣坤诸捧搐《计算机与信息技术II-C语言》《计算机与信息技术II-C语言》 1、自动变量 自动变量用关键字auto表示。 函数体中说明的变量, 函数的参数, 程序块中定义的变量称为自动变量。 自动变量存放在动态存储区, 是动态分配存储空间的。 C规定: 在局部变量的定义中, 可省略关键字“auto”, 即没有 指明存储类别的变量, 一律隐含为自动变量。 例: void main( ) { int x , y; ······ } int hanshu( auto int a ) { auto int b, c, d; ······ } int a ) 统缝匝财货乃柔旺最糖灭膘狂们书叉伯廓换菜言孙兢戒虎燕封鹏杜困拜鸵《计算机与信息技术II-C语言》《计算机与信息技术II-C语言》 2、静态变量 在局部变量前加上关键字static, 称为静态局部变量。 静态局部变量存放在静态存储区。函数调用结束时, 静态局部变量不会消失, 值仍保留, 每次函数调用时, 也不会为其重新分配空间, 它们在整个程序执行期间都不释放。这也是与自动变量的区别。 由于所有全局变量都是静态类的, C规定, 在定义全局变量时“static”可以省略。 验刻狠算泻弃冻亮抨窜阅坡扔蒸摇脸携字沈罗疆吟底望支欧奴忍福义屉央《计算机与信息技术II-C语言》《计算机与信息技术II-C语言》 静态变量举例: #include stdio.h void

文档评论(0)

baa89089 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档