【发布时间】:2021-04-03 08:35:36
【问题描述】:
我是 C++ 新手,刚开始学习指针。如果我写代码 -
const int n = 4;
int m = 4;
const int *p = &n;
我非常了解 const 使变量不可更改。因此,如果我想更改 n,我不能,但是指针具有的不可更改的值是什么?因为下一个代码正在执行正确-
p = &m;
这不应该给出一个错误,因为它已经存储了 n 的值吗?如果这是一个愚蠢的问题,我很抱歉。
【问题讨论】:
-
const int *p = &n;可以更改地址,但不能更改值。所以,*p = 8;会给你错误。