const表示常变量,不能写(即修改),只能读取
常变量:const 数据类型 符号常变量 = 数值
如:const float PI=3.14;
指针常量:
数据类型 *const 指针变量=变量名
如:char *const p="abc";
const修饰的是指针变量,而不是指针的值,所以指针指向的值是可以修改的。
常指针:
const 数据类型 *指针变量=变量名
或者是
数据类型 const *指针变量=变量名
这是指针指向的值就是不可以改变的。
需注意的点:
1.、数据类型对于const而言是透明的
2. const用于封锁直接修饰的内容,将该内容变为只读
3.、权限只能同等传递或者缩小传递
int main()
{
int a = 10;//读,写
int b = 20;//读,写
const int ca = 10;//读
const int cb = 20;//读
int *p = &a;//ok
//p = &ca;//error *p = 40;
const int *cp1 = &a;
cp1 = &b;
cp1 = &ca;//ok
const int *cp2 = &ca;//ok
int *const cp3 = &a;
//int *const cp4 = &ca;//error
const int *const cp5 = &a;
const int *const cp6 = &ca;
return 0;
}