C语言 变量与指针 回顾

1.0 变量与地址:
地址:
鞋柜的门上贴了一张纸,写了鞋柜的编号,即为地址。
变量:
鞋柜的里面放了一张纸,写了XXX,即为内容,即为变量取值。
变量名:
你的名字,你的名字对应一个具体的鞋柜格子(可变化),这个格子的内涵,包括外面那张纸(地址)和 里面那张纸(内容)。
 C语言 变量与指针 回顾

char a = '0';   
鞋柜类型为char,容量为1。

2.0 数组
char a[6];           //
横向6个鞋柜格子


3.0 二维数组
char a[5][6];
五行六列的鞋柜
int
 a[4][5];
五行六列的鞋柜格子,每个鞋柜格子 容量为char型鞋柜的四倍,容量为4。

4.0 数组指针
int
 a[5][6];   //五行六列的鞋柜,鞋柜格子型号为int
int
 (*p)[6];   //指针专用格子,格子里存储了某六个格子中第一个格子外面贴的编号。

           //本质为指针,即指针格子里面那张纸还没写数字,具体指向哪六个格子还不一定呢。
int
 (*pa)[6]=a; //指针专用格子,格子里存放了a所代表的六个格子中第一个格子外面贴的编号。0x005cfc6c
pa+=1        //下六个格子中,第一个格子外面贴的编号。
*(pa+1)+3     //相当于 pa=pa + 2指向第三排格子,然后*pa 从指针盒子里取出刚才运算的值,然后再+3,                     //由于取值了这里将之作为int值处理  0x005cfc90,跟0x005cfc6c比,多了9个int