*(a[1]+2), *(*(a+1)+2), a[1][2]
如果我有一个二维数组int a[9][9],那么以上这三个都表示数组a的第1行第2列元
素的值。其中a[1][2]很好理解,按数组的规定,a[1][2]就是第1行第2列的值,这
没啥疑惑,这就是定义就是这样规定的。
但是,前面两个带指针的表达式怎么理解,就强行背诵 *(a[i]+j)和 *(*(a+i)+j)
表示第i行第j列的值吗?有没有什么自然而然的办法来说明这样写不是规定,而是推导
出来的?
如果要是必须强行背诵的话,那么100维的数组是不是很容易背错?
--
FROM 110.255.90.*