1.指针常量
C语言里既然有指针变量,那么也有指针常量。可以理解为指针常量只能唯一指向其赋值时的某一变量
指针常量定义格式如下:
类型说明符 *const 指针常量名;
例如:
int a = 100;
int *const p = &a;
上边定义了一个指针常量指向变量a。此时,指针p是一个常量,其保存的内容即变量a的地址不能变,即指针p只能指向变量a
2.常量指针
常量指针表示不能通过指针来修改其指向对象的值。
定义格式有两种:
类型说明符 const* 常量指针名;
或
const* 类型说明符 常量指针名;(常用这种形式)
常量指针所指向的对象可以是任意变量,当其指向某一变量后,也可以通过赋值语句更改其指向。
例如:
int a = 100,b = 200;
int const* p = &a;
p = &b; //正确
*p = 50 //错误