int a=10

张有尚
  • 13

对于int a =10 ;这样的赋值语句,请问这个a是他的地址吗,还是内存中有一个值10,然后他对应于一个地址,然后a指向这个地址?

回复
阅读 118
1 个回答

你混淆了语义和具体的实现,你说的内存中有个地方存10之类的说法,是这条语句在冯诺依曼体系下的一种具体的物理实现方式。但在C++的语义层面来说,这条语句仅仅说明a是一个变量,它的值是10。&a则是a的地址,通过解引用这个地址能够获取a的值,因此a和*&a都能返回10。

你知道吗?

宣传栏