例如:int*
a是指针变量,int
b=3,
a=b,则是错误的,此时a是不等于3的,因为a是指针变量,你不能把b的值赋给它。应该是
b的地址
a=&b,就是正确的,此时a存放的就是b的值在内存中的地址
如果你输出printf(“%d”,a)与printf(“%d”,*a)
结果是不一样
前者输出的是b在内存中的地址,后者输出的是指针a
指向b的地址的值(即b的值3)
C语言里面的地址实际上就是一个内存单元的编号,计算机一般是以一个字节为最小的存储单元的,每个字节就给它编一个编号,这个编号就是这个字节的地址,这个编号也就是地址是具有唯一性的。指针指向一个变量的地址,这个类似于,通过知道房间号就可以确定这个房间的具体位置是一样的道理,这个房间编号就是房间的地址。