在C语言中可以用#define定义一个标识符来表示一个常量。其特点是:定义的标志符不占内存,只是一个临时的符号,预编译后这个符号就不存在了。预编译又叫预处理。预编译不是编译,而是编译前的处理,这个操作是在正式编译之前由系统自动完成的,所以叫预编译。用#define 定义标识符的一般形式为:
#define 标识符 常量
#define 和 #include一样,也是以“#”开头的。凡是以“#”开头的均匀为预处理指令,所以#define也是一条预处理指令。#define 又称宏定义,标识符为所定义的宏名,简称宏。
标识符的命名规则与前面讲的变量的命名规则一样。#define的功能是标识符定义为其后的常量。一经定义,程序就可以直接使用标识符来表示这个常量。是不是与定义变量类似?
但是要区分开来,变量名表示的是一个变量,但是宏名表示的是一个常量。
变量可以给他赋值,但是常量当然就不能给他赋值了!
宏所表示的常量可以是数字,字符,字符串,表达式,其中最常用的是数字。
那么为什么要使用宏定义?
用宏定义有什么好处?
我们直接使用数字不行?
为什么要用一个标识符表示数字?
宏定义的最大好处就是 “方便程序的修改”。
使用宏定义可以使用宏