虽然你的讲法不规范,而且问题分数达到惊人的1点
但是俺还是回贴了
。
对于2维数组来讲,可以理解成数组的数组。
你的例子不好做区别,换个行列不同的例子。
int a[8][4]
a是数组首元素的地址,那么作为2维数组来讲,数组首元素是什么呢?
2维数组的首元素还是个数组-----一个包含4个int的一维数组。
对于这个包含4个int的一维数组来讲,其数组名为a[0],首元素地址为a[0],
也即a[0]和a都是个地址,而且数值相同,但他们意义不同,一个是一维数组的首元素地址,一个是二维数组首元素的地址。
*a代表其首元素的值,其首元素为a[0],而a[0]又是个地址,值为
&a[0][0] ,即*a就是&a[0][0],进行取值运算,**a就是*&a[0][0],即
**a就是a[0][0],所以说,a是地址的地址。*a虽然是元素,但他还是个地址。