const指针和指向const的指针

int *const p=&a;

这是const指针,这种指针必须在定义时就给出它所指向的地址,否则会error:uninitialized const 'p'.const指针的指针本身是const类型,所以不能修改它所指向的地址,但可以修改它所指向的值。

const int *p;

这是指向const对象的指针,可以修改指向的地址,但不能通过这种指针来修改它所指向的值,即使它所指向的值不是const类型的。

const int *const p=&a;

这是指向const类型的const指针,没错,我们既不能修改它所指的地址,也不能修改它所指的值。

原文地址:https://www.cnblogs.com/zywscq/p/4271120.html