在C语言中,arr[i] 等价于 *(arr + i)二维元素空间的名称和空间的地址2中形式: 数组名 + 行下标 + 列下标 元素空间:数组名[行下标][列下标] 元素地址:&数组名[行下标][列下标] 数组名 + 行偏移 + 列偏移 + 解地址 元素空间:*(*(数组名 + 行偏移) + 列偏移) 元素地址:*(数组名 + 行偏移) + 列偏移 题目: 写出下面程序运行结果____________________ int n[3][4]={1,2,3,4,8,7,6,5,9,10,11,12}; int *pn[3] = {n[2],n[0], n[1]}; printf("%d\n",*(pn + 1)[1]);解释: 运算符优先级:[] 优先级高于 *,等价于 *((pn + 1)[1])。 pn + 1 是 pn 数组第二个元素的地址(即 pn[1] 的地址)。 (pn + 1)[1] 等价于 *((pn + 1) + 1),即 *(*(pn+1)+1)(值为 n[1][0] ) 即为8.