当前位置:高等教育资讯网  >  中国高校课件下载中心  >  大学文库  >  浏览文档

《C程序设计语言》课程PPT教学课件(讲稿)第十四章 变量的存储

资源类别:文库,文档格式:PPT,文档页数:7,文件大小:43.5KB,团购合买
变量的存储属性 1、变量的存储器类型 外存储器(辅存) 计算机存储器内存储器(主存)auto,static,extern 寄存器(CPU中的小临时存储器) register 寄存器的存取速度比主存快,用于存储一些反复被加工的数据。
点击下载完整版文档(PPT)

本次课内容:变量的存储属性 教学目的:掌握动态、表态和外部变量的存储类型定义方法; 掌握各类型的初始化及特性。 重点:变量存储类型定义方法及特性 难点:不同类型的应用环境及定义方法。 预习 maint ( int i-1,j=l; printf(“j dj=%dⅦn”,j) int i, =2, k; printf(i=%d,k=%dn”k); printi(“i=%dj=%dn”,i)

本次课内容:变量的存储属性 教学目的:掌握动态、表态和外部变量的存储类型定义方法; 掌握各类型的初始化及特性。 重点:变量存储类型定义方法及特性。 难点:不同类型的应用环境及定义方法。 预习: main() { int i=1,j=1; printf(“i=%d,j=%d\n”,i,j); { int i,=2,k; printf(“i=%d,k=%d\n”,i,k); } printf(“i=%d,j=%d\n”,i,j); }

变量的存储属性 变量的存储器类型 外存储器(辅存) 计算机存储器{内存储器(主存)auto, tatic,extern 寄存器(CPU中的小临时存储器) register 寄存器的存取速度比主存快,用于存储一些反复被加工的数据。 2、变量的生存期 (1)在编译时分配存储单元,程序执行开始后创建,程序结束后 被撤消。变量的生存期为程序执行的整个过程。 (2)只在程序执行的某一段时间内存在。如函数的形参和在函数 体或分程序中定义的变量。 (3)变量的可用域:全局可用与局部可用。 变量的存储属性分四类:寄存器( register)、自动(auto)、静态 ( static)、外部( extern)

变量的存储属性 1、变量的存储器类型 计算机存储器 寄存器的存取速度比主存快,用于存储一些反复被加工的数据。 2、变量的生存期 (1)在编译时分配存储单元,程序执行开始后创建,程序结束后 被撤消。变量的生存期为程序执行的整个过程。 (2)只在程序执行的某一段时间内存在。如函数的形参和在函数 体或分程序中定义的变量。 (3)变量的可用域:全局可用与局部可用。 变量的存储属性分四类:寄存器(register)、自动(auto)、静态 (static)、外部(extern)。 外存储器(辅存) 内存储器(主存)auto,static,extern 寄存器(CPU中的小临时存储器)register

动态变量 动态变量:某一时刻动态建立,另一时刻动态撤销的一种变 量。 动态变量包括:自动变量(Auto)、寄存器变量( Register)。 1、自动变量(auto) 自动变量定义格式: auto]数据类型变量名|=初始值表达式], 前面所使用的变量都是自动变量(默认存储类型) 说明: (1)自动变量是局部变量; P1164.11 (2)在对自动变量赋值前,变量值不确定; (3)对同一函数的两次调用之间,自动变量值不保留。 P1184.13 2、寄存器变量( register) 与自动变量有相同性质,系统将其存放于CPU中的寄存器中。 寄存器变量只能用于函数内,且只能是整型 P1184.14

一、动态变量 动态变量:某一时刻动态建立,另一时刻动态撤销的一种变 量。 动态变量包括:自动变量(Auto)、寄存器变量(Register)。 1、自动变量(auto) 自动变量定义格式: [ auto] 数据类型 变量名 [=初始值表达式],…; 前面所使用的变量都是自动变量(默认存储类型) 说明: (1)自动变量是局部变量; P116_4.11 (2)在对自动变量赋值前,变量值不确定; (3)对同一函数的两次调用之间,自动变量值不保留。 P118_4.13 2、寄存器变量(register) 与自动变量有相同性质,系统将其存放于CPU中的寄存器中。 寄存器变量只能用于函数内,且只能是整型。 P118_4.14

静态变量( static “静态”相对于动态而言。 (1)静态变量的存储空间在程序的整个运行其间是固定的,即 从程序开始到结束都是存在的。 (2)静态变量初始化是在编译时进行的。 若定义时未初始化,编译时将其初始化为0或0.0 定义格式: static数据类型变量名=初始表达式],…; 3)函数多次被调用时,静态变量的值具有可继承性。 P1204.15 (4)静态局部变量的值只能在本函数(或分程序中)使用 三、外部变量 1、外部变量是全局变量 定义在所有函数之外。 若定义时未初始化,编译时将其初始化为0或0.0。 有效范围从定义位置开始到程序尾 P121P122

二、静态变量(static) “静态”相对于动态而言。 (1)静态变量的存储空间在程序的整个运行其间是固定的,即 从程序开始到结束都是存在的。 (2)静态变量初始化是在编译时进行的。 若定义时未初始化,编译时将其初始化为0或0.0。 定义格式: static 数据类型 变量名[=初始表达式],…; (3)函数多次被调用时,静态变量的值具有可继承性。 P120_4.15 (4)静态局部变量的值只能在本函数(或分程序中)使用。 三、外部变量 1、外部变量是全局变量 定义在所有函数之外。 若定义时未初始化,编译时将其初始化为0或0.0。 有效范围从定义位置开始到程序尾。 P121_ P122_

2、外部变量使用的几种情况 (1)限定本文件的外部变量只在本文件中使用。 在外部变量定义前加一个 static,即静态外部变量,使其 具有局部化。 (2)将外部变量的作用域在本文件范围扩充。 对于位于定义点之前的函数,用 extern说明,其扩充到该 函数中。 P1244.18 (3)将外部变量作用到其它文件 在需要这些变量的文件中对变量用 extern进行声明。 P125 3、外部变量的副作用 模块间联系太多,外部依赖太多,降低独立性

2、外部变量使用的几种情况 (1)限定本文件的外部变量只在本文件中使用。 在外部变量定义前加一个static ,即静态外部变量,使其 具有局部化。 (2)将外部变量的作用域在本文件范围扩充。 对于位于定义点之前的函数,用extern说明,其扩充到该 函数中。 P124_4.18 (3)将外部变量作用到其它文件 在需要这些变量的文件中对变量用extern进行声明。 P125_ 3、外部变量的副作用 模块间联系太多,外部依赖太多,降低独立性

小结: 1、动态变量 (1)自动变量auto (2)寄存器变量 register 2、静态变量 static 3、外部变量 扩充 extern 在定义点之外扩充(文件内或文件外) 作业:1、编写求最大公约数的程序 2、P1384.12

小结: 1、动态变量 (1) 自动变量 auto (2) 寄存器变量 register 2、静态变量 static 3、外部变量 扩充 extern 在定义点之外扩充(文件内或文件外) 作业:1、编写求最大公约数的程序 2、P138_4.12

点击下载完整版文档(PPT)VIP每日下载上限内不扣除下载券和下载次数;
按次数下载不扣除下载券;
24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
已到末页,全文结束
相关文档

关于我们|帮助中心|下载说明|相关软件|意见反馈|联系我们

Copyright © 2008-现在 cucdc.com 高等教育资讯网 版权所有