int a = 1;
int b = 2;
int* c = &a;
int* d = &b;
c = d;
*d = 3;
cout << a << " " << b;
很简单,我不知道* d = 3如何使b = 3.我认为d需要等于b的地址才能这样做?
答案 0 :(得分:1)
除了不相关的差异,这个
int* d = &b;
只是此
的缩写形式int* d;
d = &b;
之后d
包含b
的地址。即d
是b
的地址。 d
没有“指向b
的地址”, 是b
的地址。
现在*d
相当于b
。您对*d
所做的一切都将发生在b
。