c语言的常量指针与指针常量

avatar
作者
筋斗云
阅读量:0

在C语言中,常量指针和指针常量是两种不同的概念。

常量指针是指指针指向的内存地址是一个常量,即指针本身的值是不可更改的,但指针指向的内存中的值是可以改变的。声明一个常量指针可以使用const关键字,例如:

int x = 10; int y = 20; int *const ptr = &x; *ptr = 30; // 合法,改变指针指向的值 ptr = &y; // 非法,无法改变指针的值 

指针常量是指指针本身是一个常量,即指针的值是不可更改的,但指针指向的内存中的值是可以改变的。声明一个指针常量可以使用const关键字,将其放在指针的前面,例如:

int x = 10; int y = 20; const int *ptr = &x; *ptr = 30; // 非法,无法改变指针指向的值 ptr = &y; // 合法,改变指针的值 

总结一下:

  • 常量指针:指针的值是常量,指针指向的值可变。
  • 指针常量:指针的值可变,指针指向的值是常量。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!