1. 指针常量(int* const)
定义
指针本身是常量:指针的指向地址不可变(必须初始化),但可以通过指针修改指向的值。
语法:类型* const 指针名 = 初始地址;
特点
指针的地址(指向)不可变。
指向的值可以修改。
int a = 10;
int b = 20;
int* const ptr = &a; // ptr 是指针常量,必须初始化
*ptr = 30; // 正确:可以修改 a 的值(a = 30)
// ptr = &b; // 错误!指针的指向不可变
2. 常量指针(const int* 或 int const*)
定义
指向的数据是常量:不能通过指针修改指向的值,但指针可以指向其他地址。
语法:const 类型* 指针名; 或 类型 const* 指针名;
特点
指针的地址(指向)可以改变。
指向的值不可通过指针修改。
int a = 10;
int b = 20;
const int* ptr = &a; // ptr 是常量指针
// *ptr = 30; // 错误!不能通过 ptr 修改 a 的值
ptr = &b; // 正确:指针可以指向其他地址
2424

被折叠的 条评论
为什么被折叠?



