在C语言中,可以用一个标识符来表示一个常量,称之为符号常量。
其特点是编译后写在代码区,不可寻址,不可更改,属于指令的一部分。
符号常量在使用之前必须先定义,其一般形式为:
#define 标识符 常量
其中#define 也是一条预处理命令(预处理命令都以"#"开头),称为宏定义命令,其功能是把该标识符定义为其后的常量值。一经定义,以后在程序中所有出现该标识符的地方均代之以该常量值。习惯上符号常量的标识符用大写字母,变量标识符用小写字母,以示区别。
枚举类型中的元素也是符号常量,如:
enum Weekday{SUN, MON, TUES, WED, THU, FRI, SAT}。
例:
#include
#define PRICE 30
main()
{
int num,total;
num=10;
total=num* PRICE;
printf(“total=%d”,total);
}
使用符号常量的好处是:含义清楚;能做到“一改全改”
不是,例如宏定义中:#define PRICE 30就没有用类型名,PRICE是标识符,30是常量。