int a[1][1];
a[0][0] = 1;
Why must I use the deference operator twice to get the value at a[0][0] (**a).
Why isn't it just *a like it is in a non multidimensional array?
Any help would be greatly appreciated!
It's the simple fact that *a == a[0]. It wouldn't make sense for *a to be both a[0] and a[0][0].
In any case, the general rule is *(a+i) == a[i] so if you want a[0][0], you'll need *(*(a+0)+0) or simply **a.
Last edited on