有人可以在我的以下程序中向我解释一下我编写的以下程序是为了理解 int * const * var; 的含义;
#include "iostream"
using namespace std ;
int main(){
int a = 2;
int * const x = &a;
int * const * p = &x;
cout << **p;
return 0;
}
这个程序的输出是 2 。
我关注的一点是 p 是指向一个指向 int 的常量指针的指针,这就是我使用它的方式,但我一直在研究存储指针,你需要指向指针的指针。那么这个程序是如何工作的。我不应该用
int * const **P
因为这意味着 P 可能包含某个指针的地址。
我不知道为什么我的代码有效:)