const 含义为只读。如果在程序中显式改变const变量那么编译会报错。

 

C语言的const:

在C语言中const 变量是放在内存中,如果使用指针可以简介改变const变量。所以在C语言中const变量是并非不可修改,演示如下:

\"\"

 

从图片实例中看出,通过指针指向const变量是可以修改所在内存的值。

 

 

C++中的const:

在C++中const变量不存放在内存中,而是存放在一个叫做“符号表”的东西里面(由编译器处理,里面的原理我也还没搞清楚,能用就好)。

比如:

const int a=10;//定义一个const 变量

那么在符号表里 符号a 就对应了数值 10。使用指针并不能改变a的值,实例:

\"\"

 

 

在例程中可以看出const修饰的a变量是不能被指针修改的,但是指针所指向的内存也确实被修改了。

 

 

 

 

收藏 打印