(1)指向const的指针:有两种写法
const int *x;
int const *x;
x是一个指针,它指向一个const int。这里不需要初始化,因为x可以指向任何东西,
但它所指的东西是不能被改变的。
(2)const指针
使指针本身成为一个const指针,必须把const放在*的右边。如下:
int d = 1;
int e = 3;
int *const x = &d;
x是一个指向int的const指针。因为现在指针本身是const指针,
所以必须要给其一个初始值,这个值保持不变。然而要改变它
所指向的值是可以的,可以这样*x = 2;而不能x = &e;
事实上,指针符号*是与标识符结合,而不是与数据类型结合的。
所以,下面语句:
int* u, v = 0;
定义了一个int型指针u和一个int型变量v(v不是指针)。
如果想把v也定义为指针须这样写:int* u, *v =0;