const关键字,在C语言中用来修饰变量,表示这个变量是常量。
const用来修饰指针,有4种方式:
第一种,const int *p
p本身不是const,p指向的变量是const
第二种,int const *p
p本身不是const,p指向的变量是const
第三种,int * const p
p本身是const,p指向的变量不是const
第四种,const int * const p
p本身是const,p指向的变量也是const
const修饰的变量在GCC环境下,变量是可以改变的。因为const是gcc用来检查来确保实现(const类型的变量不能改是编译错误,不是运行错误。只要骗过编译器就可以改变,运行不会报错)。GGC在分配const修饰的变量内存空间的时候,把它和普通变量放在同一个可修改的空间内。
const主要用在告诉编译器,这个被const修饰的变量是不必改变的。更多的就是当作以后信息传入函数中,告诉编译器和程序员这是没有必要改变变量的值。