租用问题

质量为本、客户为根、勇于拼搏、务实创新

< 返回租用问题列表

C语言中指针常量和常量指针的不同是什么,c语言指针常见问题

发布时间:2023-08-02 09:29:16

C语言中指针常量和常量指针的不同是甚么

C语言中指针常量(const pointer)和常量指针(pointer to const)的不同以下:
1. 指针常量(const pointer):指针本身是一个常量,它的值(即指向的地址)不能被改变,但是可以通过该指针来修改所指向的变量的值。例如:
```
int x = 5;
int *const ptr = &x; // ptr是一个指针常量,它的值不能被改变
*ptr = 10; // 可以通过ptr修改x的值
```
2. 常量指针(pointer to const):指针所指向的变量是一个常量,它的值不能被修改,但是指针本身可以指向其他变量。例如:
```
const int x = 5;
const int *ptr = &x; // ptr是一个常量指针,它指向的变量x的值不能被修改
ptr = &y; // 可以改变ptr的指向,指向其他变量
```
总结起来,指针常量是指针本身不可变,但是可以通过该指针来修改所指向的变量的值;而常量指针是指针所指向的变量不可变,但是指针本身可以指向其他变量。