指向常量的指针
声明:
const int a = 5;
const int* ptr1 = &a;
int const* ptr2 = &a;
作用:不能对指向的值进行修改,但是可以修改指针指向的地址。
//修改指向的值,错误
*(ptr1) = 3;
//指向其他常量,正确
const int b = 3;
ptr1 = &b;
常量指针(自身是常量的指针)
声明:
int c = 5;
int* const ptr3 = &c;
作用:可以对指向的值进行修改,但是不可以修改指针指向的地址。
//对指向的值进行修改,正确
*ptr3 = 6;
//修改指针指向的地址,错误
int d = 5;
ptr3 = &d;