()变量声明的一般格式 「存储类型数据类型变量名1[=表达式1 ,变量名2[=表达式2]1 ,变量名n[=表达式n 其中: …表示可缺省项。因此,变量声明的最简单的形式是: 数据类型变量名; 变量名:是要声明的变量的名字。可以一次声明多个变量, 它们之间用逗号隔开。在声明变量的同一作用城中,一个变 量名只能被定义成一种类型,不能重复定义
21 ㈠ 变量声明的一般格式 [存储类型] 数据类型 变量名1 [ =表达式1 ] [ , 变量名2 [ =表达式2 ] ] …… [ , 变量名n [ =表达式n ] ] ; 其中 : [……] 表示可缺省项。因此,变量声明的最简单的 形式是: 数据类型 变量名; 变量名i 是要声明的变量的名字。可以一 次声明多个变量, 它们之间用逗号隔开。在声明变量的同一作用域中, 一个变 量名只能被定义成一种类型,不能重复定义
maino nt a i float a 程序编译时,将会给出如下的错误信息: Error C:TCINONAME C 5: Redeclaration of 'a' in function main 22
22 main( ) { int a ; float a ; …… } 程序编译时 , 将会给出如下的错误信息: Error C:\TC\NONAME.C 5 : Redeclaration of 'a' in function main
数据类型 在该位置处指定变量的数据类型。用来指出给变量分 配多大的存储空间;规定数据的存储形式,或者说对变量 所占用的存储空间中的数据如何解释。 可使用的基本数据类型的关键字是: char字符型 int 基本整型 float单精度浮点数 double双精度浮点数 23
23 char 字符型 int 基本整型 float 单精度浮点数 double 双精度浮点数 数据类型 在该位置处指定变量的数据类型。用来指出给变量分 配多大的存储空间;规定数据的存储形式,或者说对变量 所占用 的存储空间中的数据如何解释。 可使用的基本数据类型的关键字是:
存储类型 用来指出变量存储的地方。变量可被存储到三种区域中: 静态数据区、堆栈区和寄存器。 静态数据区存储空间分配在编译阶段进行,存于其中 的数据对象相对程序的执行是永久的(一直有效) 堆栈区存储空间的分配在函数或复合语句被执行时进 行,存于其中的数据对象相对函数或复合语句的执行是临时 的(函数或复合语句一旦执行结束,它们用的空间立即释放, 存于其中的数据不再有效)。 寄存器C语言允许将变量存放到指定的寄存器中。 声明变量时若要指定存储类型,可用如下存储类型关键 字进行: auto static register extern 24
24 存储类型 用来指出变量存储的地方。变量可被存储到三种区域中: 静态数据区、堆栈区和寄存器。 静态数据区 存储空间分配在编译阶段进行,存于其中 的数据对象相对程序的执行是永久的(一直有效)。 堆栈区 存储空间的分配在函数或复合语句被执行时进 行,存于其中的数据对象相对函数或复合语句的执行是临时 的 ( 函数或复合语句一旦执行结束,它们用的空间立即释放, 存于其中的数据不再有效)。 寄存器 C 语言允许将变量存放到指定的寄存器中。 声明变量时若要指定存储类型,可用如下存储类型关键 字进行: auto static register extern
其中: 声明了存储类型为auto型的变量称之为“动态变量 对 于这种存储类型 a)只用于局部变量的声明(不能用于外部变量,即全局变 量)。所谓局部变量,是指变量的作用域仅是定义它的函 数或复合语句 b)C编译程序总是将auto型变量存储到堆栈区 c)因此,这种变量具有局部性、动态性、临时性。 d)声明变量时若未给出存储类型关键字,对局部变量:其 缺省值为auto;而对全局变量或外部变量:其缺省值为 extern
25 其中: 声明了存储类型为 auto 型的变量称之为“动态变量”。 对 于这种存储类型: a) 只用于局部 变量的声明(不能用于外部变量, 即全局变 量)。所谓局部变量, 是指变量的作用域仅是定义它的函 数或复合语句。 b) C编译程序总是将 auto 型变量存储到堆栈区。 c) 因此,这种变量具有局部性、动态性、临时性。 d) 声明变量时若未给出存储类型关键字, 对局部变量:其 缺省值为auto ;而对全局变量或外部变量: 其缺省值为 extern