解引用返回的是什么

bayes
  • 46
int a = 10;
int* p = &a;
那么, 解引用 *p返回的是什么呢?
(1) 会返回一个临时变量来存储值10吗?
(2) 还是返回的就是a本身?

另外:请教下解引用的的源码是什么? (解引用符号*应该是重载的*)
回复
阅读 1.1k
2 个回答
youth7
  • 1.2k
✓ 已被采纳
  1. *p返回的是什么呢?——*p返回的是整型值10
  2. 会返回一个临时变量来存储值10吗?—— 不会
  3. 还是返回的就是a本身?—— 不是,返回的是a的值的copy

你把 a*p 看成是等同的就可以。

你对 *p 做赋值,实际改变的是 a。这就像是一个人有两个名字一样,本质都是同一个人。

宣传栏