C++中指针常量与常量指针有以下区别:
1. 指针常量(Pointer to constant):指针常量是一个指针,它的值是一个常量,即指针指向的地址不可变。可以修改指针存储的地址,但不能通过指针修改所指向的值。声明指针常量时,常量修饰符const放在星号*前面。
示例:const int* ptr; // 指针ptr是指向int类型的常量
2. 常量指针(Constant pointer):常量指针是一个指针,它指向的地址是一个常量,即指针指向的地址不可变。不能修改指针存储的地址,但可以通过指针修改所指向的值。声明常量指针时,常量修饰符const放在星号*后面。
示例:int* const ptr; // 指针ptr是一个常量指针,不能修改指针的地址
总的来说,指针常量和常量指针的区别在于指针常量的值(即指针指向的地址)是常量,而常量指针的地址是常量。