c语言中二维数组 **(a+2)与*(*a+2)的区别

作者&投稿:邓泥 (若有异议请与网页底部的电邮联系)
比如a[3][4],**(a+2)相当于a[2][0],*(*a+2)则对应a[0][2]。

**(a+2)表示的是a[2][0]
*(*a+2)表示的是a[0][2]

一个二维数组,a和*a有什么区别,C语言~

你可以把二维想象成XY坐标。
a在XY坐标的角度看待指针的指向的
而*a是在X坐标的角度看待指针的指向的
虽然他们都是指向原点

a[0][0],a[0][1],a[1][0],a[1][1],数组在内存中是顺序存储。