inta表示a这个变量是整型,只能存放整数。
inta【10】【10】
指的是代表a的二维数组,是指向一个有十个元素的数组的指针,或者说a是具有十个元素的数组的首元素的地址,这十个元素,每个元素都是一个数组。
在C语言的定义中,二维数组可以看作一个一维数组,每个元素还是一个一维数组。
inta[m][n];
表示一个包含m个元素的一维数组,每个元素是一个包含n个整型数据的一维数组。(参考K&R C 第二版 5.7 Multi-dimensional Arrays)
2.在C语言中,指针和数组有相似之处,但是两者本质不同。两者相似的地方有两点:
读取数组元素
函数传递
就二维数组来说,“相似”的指针应该指向和二维数组的子数组相同的数据类型,如
int(*p)[n]=a;
此时可以用a[i][j]或p[i][j]或*(p+i)[j]或*(a+i)[j]来获取相同的数据。
在声明一个接受一个二维数组的函数原型时,会忽略第一层数组的长度,等效的是上述指针类型的参数。即下面两种函数原型的声明都可以成功接受a做参数:
定义一个有10个元素的整型(int)数组,数组元素从a[0]到a[9],不包括a[10]。数组元素的完整定义为:
int a[10]={1,2,2,6,5,4,9,5,7,7};
定义一个大小为10的整型数组,数组元素分别是从a[0]到a[9],不包括a[10].
10是该树组的长度,即在内存中分配10个连续的空间用于存放整型数据.
10表示的是数组的大小,也就是以int类型大小为单位分配的内存空间的长度。