C语言常量与变量
对于基本数据类型量,按其值是否可变又分为常量和变量两种。
在程序执行过程中,其值不发生改变的量称为常量,其值可变的量称为变量。它们可与数据类型结合起来分类,例如,可分为整型常量、整型变量、浮点常量、浮点变量、字符常量、字符变量。
说明:符号常量在使用之前必须先定义,其一般形式为:
#define 标识符 常量
其中#define也是一条预处理命令(预处理命令都以"#"开头),称为宏定义命令(在后面预处理程序中将进一步介绍),其功能是把该标识符定义为其后的常量值。一经定义,以后在程序中所有出现该标识符的地方均代之以该常量值。
习惯上符号常量的标识符用大写字母,变量标识符用小写字母,以示区别。
【例3-1】符号常量的使用。
几点说明:
变量定义的一般形式为:
类型说明符 变量名, 变量名, ...;
在书写变量定义时,应注意以下几点:
变量定义举例:
在变量定义中赋初值的一般形式为:
类型说明符 变量1= 值1, 变量2= 值2, ……;
例如:
注意,在定义中不允许连续赋值,如a=b=c=5是不合法的。
来看一个变量初始化的例子。
在程序执行过程中,其值不发生改变的量称为常量,其值可变的量称为变量。它们可与数据类型结合起来分类,例如,可分为整型常量、整型变量、浮点常量、浮点变量、字符常量、字符变量。
常量
在程序执行过程中,其值不发生改变的量称为常量。常量分类:常量 | 说明 |
---|---|
直接常量(字面量) |
可以立即拿来用,无需任何说明的量,例如:
|
符号常量 | 用标识符代表一个常量。在C语言中,可以用一个标识符来表示一个常量,称之为符号常量。 |
说明:符号常量在使用之前必须先定义,其一般形式为:
#define 标识符 常量
其中#define也是一条预处理命令(预处理命令都以"#"开头),称为宏定义命令(在后面预处理程序中将进一步介绍),其功能是把该标识符定义为其后的常量值。一经定义,以后在程序中所有出现该标识符的地方均代之以该常量值。
习惯上符号常量的标识符用大写字母,变量标识符用小写字母,以示区别。
【例3-1】符号常量的使用。
#include<stdio.h> #define PRICE 30 int main(){ int num,total; num=10; total=num* PRICE; printf("total=%d",total); return 0; }
几点说明:
- 用标识符代表一个常量,称为符号常量。
- 符号常量与变量不同,它的值在其作用域内不能改变,也不能再被赋值。
- 使用符号常量的好处是:含义清楚;能做到“一改全改”。
变量
其值可以改变的量称为变量。一个变量应该有一个名字,在内存中占据一定的存储单元。变量定义必须放在变量使用之前。一般放在函数体的开头部分。要区分变量名和变量值是两个不同的概念。类型说明符 变量名, 变量名, ...;
在书写变量定义时,应注意以下几点:
- 允许在一个类型说明符后,定义多个相同类型的变量。各变量名之间用逗号间隔。类型说明符与变量名之间至少用一个空格间隔。
- 最后一个变量名之后必须以“;”号结尾。
- 变量定义必须放在变量使用之前。一般放在函数体的开头部分。
变量定义举例:
int num,total; double price = 123.123; char a = 'a', abc;
变量的赋值
变量可以先定义再赋值,也可以在定义的同时进行赋值;在定义变量的同时赋初值称为初始化。在变量定义中赋初值的一般形式为:
类型说明符 变量1= 值1, 变量2= 值2, ……;
例如:
int a=3; int b,c=5; float x=3.2,y=3.0,z=0.75; char ch1='K',ch2='P';
注意,在定义中不允许连续赋值,如a=b=c=5是不合法的。
来看一个变量初始化的例子。
#include<stdio.h> int main(void){ int a=3,b,c=5; b=a+c; printf("a=%d,b=%d,c=%d\n",a,b,c); return 0; }