指针常量和常量指针的区别
指针常量:本质上是一个常量,不过这个常量是个指针;比如:
int a = 3, b = 4;
int * const p1;
这个const是用来修饰p1这个指针的,所以指针本身不可以被修改,但是这个指针所指向的值是可以被修改的;
p1=&b; //错误; *p1=b; //正确
常量指针:本质上是一个指针,不过这个指针指向一个常量;比如
int c = 5,d = 6; int const * p2 = &c; const int * p3 = &c;
这里的const是用来修饰int的,即c是一个常量;这里指针p2 p3可以修改,但是不可以通过指针修改c的值;比如:
p2 = &d; //错误 c = d; //正确
常量指针只是限制通过指针来修改常量的值;
太阳即将升起,未来可期