c语言中指针和多维数组的理解
1.复习指针和数组之间的特殊关系:不带方括号的数组名是一个指针,指向该数组的第一个元素。
2.多维数组: int multi[2][4];//声明一个二维数组作为举例
a.理解方式1:可以将数组看成行和列构成,即理解成2行4列。(传统的理解方法)
理解方式2:可以将multi数组看作一个包含2个元素,而其中每个元素都是一个包含4个int变量的数组。
3.图形理解方式
a.声明了一个multi的数组
b.数组multi包含两个元素(数组)
c.其中每个元素(数组)包含4个元素(int变量)
4.回到不带方括号的数组名是一个指针,指向数组的第一个元素,数组的第一个元素即multi[0],它是由四个int变量组成的数组
5.既然multi[0]是一个数组,则multi[0]指向它的第一个元素multi[0][0],不带方括号的数组名是一个指针(想想句话描述的合理性),它指向数组的第一个元素,multi[0](这是一个数组名)是数组multi[0][0]的明称(不带最后一对方括号),因此它是一个指针。