- 4
- 0
- 约8.57千字
- 约 31页
- 2017-01-01 发布于重庆
- 举报
C语言丰富的数据类型 回顾 C语言中整型变量用关键字int定义。 可以用long和short来修饰int,表示长整型和短整型。 用signed和unsigned来修饰int,表示带符号整型和无符号整型。 例: int a, b, c; unsigned int a, b, c; unsigned short a; long sum; 变量数据类型决定了相关的存储空间大小!但程序内部变量能否同名?系统如何分配管理这些变量的存储空间?系统何时将内存分配给变量?何时注销掉?存放的数据保留到何时?这些问题将在第4章“变量的存储类型”中分析。 第4章 变量的存储类型 4.1 概述(变量作用域、数据类型、存储类型) 4.2 自动型[auto] 4.3 寄存器型[register] 4.4 外部参照型[extern] 4.5 静态型[static] 4.6 存储类型小结 4.1 概述(变量作用域、数据类型、存储类型) 变量定义: 存储类型 数据类型 变量名表; C程序中变量属性: 变量作用域:变量名称在程序中可以使用的范围。变量在程序中定义位置决定了该变量在哪一个程序段区间有效,这种性质又称为“可见性”。 数据类型:决定了该变量数据范围以及所占内存单元的大小及形式; 存储类型:规定了该变量所在的存储区域,以及该变量数据存在时间; 变量作用域:局部或全局 全局变量:在函数外定义的变量称为外部变量,又称为“全局变量”。作用域为定义或声明处(extern声明)到文件结束. 方便各函数间数据共享.一直占据着分配的数据存储空间. 局部变量:在一个函数内部或复合语句内部定义的变量叫内部变量,又称为“局部变量”。作用域为定义处到函数或复合语句结束. 不同函数或复合语句中可定义同名的变量,它们分配不同存储地址,彼此互不影响。与全局变量同名时注意采用本复合语句内定义的变量。 #include stdio.h int sum; //全局变量定义 void main( ) { int x=5; //main()函数中局部变量 sum=100; printf(x=%d\t,sum); if(x0) { int x=10; //复合语句内局部变量 printf(x=%d\t,x); } printf(x=%d\n,x+2); } 变量存储类型:决定变量所需的存储空间位置以及管理方式. 变量存储类型说明关键字: auto 自动型 static 静态型 register 寄存器型 extern 外部参照型声明 动态存储变量:在程序运行期间进行临时性动态分配存储空间的变量. auto型局部变量、register变量. 静态存储变量:在程序运行期间永久性占用内存的变量,变量值在程序执行中系统只进行一次初始化, 由程序指令操作改变. 全局变量和static局部变量都是静态存储类型. 程序使用内存区域分类: 程序代码区: 程序的指令代码存放在程序代码区。 静态存储区: 静态存储变量存放区,包括全局变量和static型局部变量,变量值一次初始化(隐式初始化为0或空字符),永久供程序操作。 动态存储区: 存放局部自动变量、函数的形参以及函数调用时的现场保护和返回地址等,系统动态分配。 4.2 自动型变量[auto] 1.定义:自动变量用关键字auto作存储类型声明 例: void main { auto int x, y; // auto型变量定义 float z; //缺省数据存储类型时默认为auto型变量 …….. } 在主函数内定义了自动型int变量x,y和自动型float 变量z,在定义自动型变量时auto可缺省。 if (x!=y) { int i ; //局部变量,作用域为复合语句内 for (i = 0 ; i 10 ; i++) { int j ; //复合语句中局部变量,作用域为复合语句内 …… } } 在条件判断后的那个复合语句中定义了一个自动型int变 量i,在for循环后的那个复合语句中定义了一个自动型int 变量 j 。 例4.1 #includ
您可能关注的文档
最近下载
- 个人简历表格填写2021简历模板.docx VIP
- 针灸推拿学习题库(附答案).docx VIP
- 毕业设计(论文)-五边形凸台零件铣削加工.doc VIP
- 2026届山东省淄博市高三上学期期末考试(摸底质量检测)历史试题(含答案).docx VIP
- 常见词组固定搭配.pdf VIP
- 2023年山东泰安中考地理试题及答案.pdf VIP
- 胎动管理专家共识最新2025.pptx
- (小学综合实践课标复习题全.doc VIP
- 0—3岁婴幼儿心理发展与教育 第四章 0-3岁婴幼儿心理发展与教育 课件PPT.pptx VIP
- 0—3岁婴幼儿心理发展与教育 第三章 0-3岁婴幼儿心理发展与教育 课件PPT.pptx VIP
原创力文档

文档评论(0)