C语言中的常量分为以下几种:
- 字面常量,如:10,3.14,“abc”,'a’等
- const修饰的常量
- #define定义的标识符常量
- 枚举常量
#includeint main() { int num = 10;//变量为num num = 20; printf("%dn",num); return 0; }
运行结果为:20.在此基础上将int num = 10;改为const int num = 10;,则运行时num=20这里会报错:
因为给语句加上const就把变量的值给定死了,这个值不可以被修改,此时的num就叫做“常变量”而不是“变量”了,具有常数属性(不能被改变的属性),但是还是要注意,它也跟常量不同,我们来验证一下它跟常量是不一样的。
在int n = 10;前面加上const也还是会报错,显示“表达式必须含有常量值”。所以说const修饰的变量为常变量。
#include#define MAX 1000; int main() { int n = MAX; printf("%dn",n); return 0; }
运行结果为1000.
4、枚举常量枚举常量指的是可以一一列举的常量,如:在登录某些软件填写一些资料的时候,可以选择性别为男、女,还可以选择“私密”。
要用到enum关键字来定义性别类型。
#includeenum sex { male, female, secret };//这里面包含枚举类型所有包含的可能取值 int main() { enum sex s = male; printf("%dn", male);//male指的是任何一种可能值 printf("%dn", female); printf("%dn", secret); return 0; }
运行结果为:
0 1 2
出现这样的运行结果的原因是:枚举常量是常量,它的值是从零开始的,默认是从0开始的。



