C++中的*和& 1. int a 本质上a为一个存储单元,cpu通过存储单元的地址找到该存储单元里面的值。所以本质上a为两个值:1)存储单元的地址值;2)存在存储单元里面的值。但,为了消除这种二义性,C语言定义a为存在存储单元里面的值,即a=1。 2. int *a int a,a为储存单元的地址,这个储存单元中的值为int型,可以通过a来读取该储存单元中的值。 3. int& a和&a int& a,定义一个引用,int& a=b,给b这块空间多加一个名称叫a。&a,取a的存储单元的地址。