const的介绍
a:从字面上可以知道,const是不变的,常数
b:但是const定义的变量是常量变量(常变量),那么什么是常量变量呢?我们知道常量不能进行改变,所以const定义的变量是不能被修改的。但是本质上还是变量,因为需要指定数据类型。
例如:5是常量,我们在C语言中使用5总不需要先说int 5吧,而是直接拿来使用。而使用一个变量前,我们需要定义,假如我后面要用 i,那我在使用前就要声明 i 的数据类型。
c:既然本质上是变量,那么我们就可以对它进行修改(小伙伴们看到这里不要懵哦,后面有栗子可以看)
例子:
#include<stdio.h>
int main()
{
const int j = 5;
j = 0;
printf("%d\n", j);
}结果:
报错
这个例子讲述当变量被const定义时,不能对变量进行修改。
前文讲到可以对const定义的变量进行修改,并不是直接使用变量修改值,其实是借用指针来修改。这个咋们可以这样理解,j是变量的名字,const定义后不能通过名字来对这个变量来修改,反而可以通过解引用间接修改。
例子:
#include<stdio.h>
int main()
{
const int j = 5;
int* p = (int*)&j;
printf("%d\n", j);
*p = 0;
printf("%d\n", j);
}结果:
5
0
一只可怜虫只是将自己想法分享一下,不对的地方望大佬指正!!!