对于c语言中数组名的操作我们应该是很陌生的吧,因为几乎不会使用数组名来对数组进行操作,因为凡是可以使用数组名操作的我们都可以使用&和*两种操作符更简单形象的进行一些操作。但是我们还是需要了解一下,关于数组名的基本语法,不需要去使用,但是要看懂哈。
一维数组;
数组名首先是一个标识符,是这个数组的名字,同时又是一个指针,指向的是这个数组首地址。
既然是指向首地址的指针,因此就有了第二种表示数组元素的方法,使用数组名;
a;代表指向数组首地址的指针。则就是指向a[0]的地址,则与&a[0]等效;
a+i;则表示指向数组的第i+1个元素。则与&a[i]等效;
*;是取值符。与&恰好相反;
a就相当于&a[0],而*(a+i)就表示a[i];
//记得*(a+i)要打括号,优先级问题,如果没打则表示的是a【0】+i的值;
看程序;
这就是一维数组中的数组名。
再看一个数组名的一个小程序;
分析二维数组的数组名;从上面那个小程序可以看出数组名存在嵌套关系的;根据这个来详细分析二维数组数组名。
就是根据一维数组名一层一层的分分析就得到其余多维数组名的解释,
二维是由一维嵌套。
三维就是由二维嵌套。