一、#什么是常量?
生活中我们接触到的量有两种,一种是变量,一种就是我们经常说的常量。
在数学领域中,常量在一个给定系统中所不变的量叫做常量。在代码知识中也是如此。
常量:是在一串代码中恒定不变的量。
二、#常量可以分几类?
在代码的领域里,常量大致可以分为
1.字面常量
2.const修饰的常量
3.#define定义的标识符常量
4.枚举常量
三、#它们分别是什么?又有着什么含义?
①1.字面常量
字面常量是:在一串代码中直观的数值就叫做字面常量
int main()
{
3
10
20
return 0;
}
像3、10、20之类的数就叫做字面常量。
②2.const修饰的常变量
对于const修饰的常量的理解,我们可以用实验来解答
我们可以看到,当第一次我们给a赋值为3的时候代码会很好的走下去,打印的是3和9。
---------------------------------------------------------------------------------------------------------------------------
但是,当我们把第一次打印屏蔽之后,我们可以发现,第一次的3被第二次的9所代替
现在我们加上我们的const函数来看一下。
我们发现这里会报错,说:指定const对象,这句话意思就是const后面的数已经是常量了,已经是定值,不能更改了,而你却在后面给定a=9,所以系统就会报错。
其实呢,const函数是常属性,比如上图就是说让a =3;有常属性,让他有常量的属性,让它从可变成为不可变。这里,加上const,a就不可变了,其实不加const之前a是可变的,所以加上const函数之后a就成了常变。常变量又是怎么理解呢?我们这里可以理解为:一个中国人,放弃了中国国籍,加入外国国籍,他是外国人,但是他身上仍然流的是中国人的血。
我们举个例子:
我们可以看到n为变量,但是错误上说:表达式必须含有常量值,啥是常量呢?这里只有“10”
所以我们把n用10替换看一下
果然,和我们的猜想是一样的程序运行下去了
但是,有一种问题,我们在int n=10;前面加上const修饰函数,程序还会不会正常的走下去呢?
结果是不行的,跟上面一样:应输入常量表达式。说明一个问题,就是,此时的n还不是常量,它只是一个常变量不是常量
③3.# #define定义的标识符常量
#define定义的标识符常量这个比较好理解,我们用代码的形式给大家说明!!!
我i们发现这个代码能够编译下去,说明y是一个常量
这就是#define定义的标识符常量
④4.#枚举常量
枚举枚举,顾名思义,就是一枚一枚分别列举出来的就叫做枚举常量。
解释枚举常量的时候我们先要讲一个新的函数:enum,这个函数叫做枚举值。接下来我们还是用代码的方式解释一下:
上图所指的分号必不可少,这是enum函数的格式,中间的元素与元素之间必须要有逗号隔开,然后我们打出我们的主函数,执行代码看一下所输出的值
大家可以自己下去多枚举几个值,就可以发现,代码运行下来的值都是0、1、2
这些值是默认的,是不可更变的,放在枚举类型内的叫做枚举常量
大括号内给的枚举常量是不能改的。
这就是博主总结的常量的概念,总结的不好,海涵!
制作不易,加个关注!点个赞