易百教程

指向常量的指针

当要声明指针指示无法更改指向的值时,可以使用const关键字。

long value = 9999L;
const long *pvalue = &value; // 定义指向常量的指针

例如,以下语句现在将导致编译器错误:

*pvalue = 8888L;  // Error - 试图改变`const`变量的值

pvalue指向的值不能更改,但是可以更改变量value的值:

value = 7777L;

指针本身不是常量,因此仍然可以更改指向的内容:

long number = 8888L;
pvalue = &number; // OK - 更改pvalue中的地址

这会将存储在pvalue中的地址更改为指向number。不能更改指针存储的值,
但可以更改存储在指针中的地址,但不允许使用指针更改指向的值。