常量指针与指向常量的指针
常量指针(constant Pointers)
int* const p;
它指向的地址不能够改变,但是指向的地址值可以改变
int a=10; int *const p=&a; a=20; //地址不可以修改,但是地址对应的值可以修改 cout<<*p<<endl;
指向常量的指针(Pointers to Constants)
const int *p 或者int const *p;
不能通过指针来修改这个指针指向的值,但是可以通过指向的变量自身来修改值
int a=10; const int *p=&a; //int const *p=&a; //或者可以这样定义 a=20; //这个是可以的 //*p=20; //这个是不允许的,编译的时候会出错 cout<<*p<<endl;