变量的存储属性

上传人:wm****3 文档编号:51817140 上传时间:2018-08-16 格式:PPT 页数:7 大小:27KB
返回 下载 相关 举报
变量的存储属性_第1页
第1页 / 共7页
变量的存储属性_第2页
第2页 / 共7页
变量的存储属性_第3页
第3页 / 共7页
变量的存储属性_第4页
第4页 / 共7页
变量的存储属性_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《变量的存储属性》由会员分享,可在线阅读,更多相关《变量的存储属性(7页珍藏版)》请在金锄头文库上搜索。

1、本次课内容:变量的存储属性 教学目的:掌握动态、表态和外部变量的存储类型定义方法; 掌握各类型的初始化及特性。 重点:变量存储类型定义方法及特性。 难点:不同类型的应用环境及定义方法。 预习: main() int i=1,j=1; printf(“i=%d,j=%dn”,i,j);int i,=2,k;printf(“i=%d,k=%dn”,i,k); printf(“i=%d,j=%dn”,i,j); 变量的存储属性 1、变量的存储器类型计算机存储器寄存器的存取速度比主存快,用于存储一些反复被加工的数据。 2、变量的生存期 (1)在编译时分配存储单元,程序执行开始后创建,程序结束后 被撤消

2、。变量的生存期为程序执行的整个过程。 (2)只在程序执行的某一段时间内存在。如函数的形参和在函数 体或分程序中定义的变量。 (3)变量的可用域:全局可用与局部可用。 变量的存储属性分四类:寄存器(register)、自动(auto)、静态 (static)、外部(extern)。外存储器(辅存)内存储器(主存)auto,static,extern寄存器(CPU中的小临时存储器)register一、动态变量动态变量:某一时刻动态建立,另一时刻动态撤销的一种变 量。 动态变量包括:自动变量(Auto)、寄存器变量(Register)。 1、自动变量 (auto) 自动变量定义格式: auto 数据

3、类型 变量名 =初始值表达式,;前面所使用的变量都是自动变量(默认存储类型)说明:(1)自动变量是局部变量; P116_4.11(2)在对自动变量赋值前,变量值不确定;(3)对同一函数的两次调用之间,自动变量值不保留。 P118_4.13 2、寄存器变量(register)与自动变量有相同性质,系统将其存放于CPU中的寄存器中 。寄存器变量只能用于函数内,且只能是整型。 P118_4.14二、静态变量(static)“静态”相对于动态而言。(1)静态变量的存储空间在程序的整个运行其间是固定的,即 从程序开始到结束都是存在的。(2)静态变量初始化是在编译时进行的。若定义时未初始化,编译时将其初始

4、化为0或0.0。定义格式:static 数据类型 变量名=初始表达式,;(3)函数多次被调用时,静态变量的值具有可继承性。P120_4.15(4)静态局部变量的值只能在本函数(或分程序中)使用。 三、外部变量1、外部变量是全局变量定义在所有函数之外。 若定义时未初始化,编译时将其初始化为0或0.0。 有效范围从定义位置开始到程序尾。 P121_ P122_2、外部变量使用的几种情况(1)限定本文件的外部变量只在本文件中使用。 在外部变量定义前加一个static ,即静态外部变量,使其 具有局部化。(2)将外部变量的作用域在本文件范围扩充。对于位于定义点之前的函数,用extern说明,其扩充到该 函数中。 P124_4.18(3)将外部变量作用到其它文件 在需要这些变量的文件中对变量用extern进行声明。 P125_ 3、外部变量的副作用 模块间联系太多,外部依赖太多,降低独立性。小结: 1、动态变量 (1) 自动变量 auto (2) 寄存器变量 register 2、静态变量 static 3、外部变量 扩充 extern在定义点之外扩充(文件内或文件外) 作业:1、编写求最大公约数的程序 2、P138_4.12

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号