看一个代码段
int a,b;
a = 3;
b = a;
关注a这个变量;
第一句,是“给a赋值3”;
3赋给a,从此a这个变量就是3,还记得上一节说过的吗?a是一个变量名,也是代表给a分配的那个内存块的地址,因此,完整地说,是“把a这块地址内容赋值为3”;
所以这个a代表的是地址,只有一块内存空间(以地址命名),才能存数据;
第二句是 “把a赋给b”,意思却是把a里存储的这个3 赋值给b,这个时候,它代表的是a这块内存里的内容;
专业术语叫 左值右值,但我不是让你记忆名词,你只要记得,变量放(赋值号(就是等号))的左边,意味着这块内存地址;放右边,代表它的内容;
从上一节开始,我说的就显得有点复杂,而我却一直只是说变量!
别紧张,所有C元素都是类似的,一通百通。有了这个内容我才能讲程序编译后在存储区里的长相。
调用函数名,你调用的是这个函数编译以后存储在程序存储器里的地址;
引用数组,你是引用这块内存区的地址;