指针常量和常量指针是两种不同的概念。例如:```intnum=10;int*constp=#*p=20;//合法,修改所指向的内存中的值p=NULL;//非法,指针本身是一个常量,不可修改其指向的地址```常量指针是指指针变量所指向的内存地址是可修改的,但指针所指向的内存中的值是不可修改的。-常量指针的值是可修改的,但指向地址的值是不可修改的。
指针常量和常量指针是两种不同的概念。
指针常量是指指针本身是一个常量,即指针变量所指向的内存地址是不可修改的,但指针所指向的内存中的值是可修改的。例如:
```
int num = 10;
int *const p = #
*p = 20; // 合法,修改所指向的内存中的值
p = NULL; // 非法,指针本身是一个常量,不可修改其指向的地址
```
常量指针是指指针变量所指向的内存地址是可修改的,但指针所指向的内存中的值是不可修改的。例如:
```
int num = 10;
const int *p = #
*p = 20; // 非法,不可修改所指向的内存中的值
p = NULL; // 合法,可以修改指向的地址
```
总结:
- 指针常量的值(指向的地址)是不可修改的,但指向地址的值是可修改的。
- 常量指针的值(指向的地址)是可修改的,但指向地址的值是不可修改的。