如果我初始化了一个二维数组

Int a[2][3] = {
                              1, 2, 3,
                               4, 5, 6};

是否a[0]=&a[0]??
我知道a[0]是指数组第一个元素的地址。那么&a[0]仍然是地址吗?

最佳答案

首先,arrayNum[0]的类型是Int[3]&arrayNum[0]的类型是Int(*)[3](我没有将OP的Int更改为可能的int)。
其次,数组可以衰减为指向其第一个元素的指针,因此arrayNum[0]可以衰减为&arrayNum[0][0]类型的Int*
这两个指针,&arrayNum[0]&arrayNum[0][0]将指向同一位置,但它们的类型非常不同。

10-06 14:23