-
pointer arithmetic
how do i use pointer arithmetic for a mulit-dimension array?
i know 1-D array is as follows:
int array[3];
*(array) == array[0]
*(array + 1) == array[1]
*(array + 2) == array[2]
for multi-d array:
int array[3][3];
? == array[0][0]
? == array[0][1]
? == array[0][2]
? == array[1][0]
etc........
thank you.
-
I may be wrong with the parenthesis placement, but here's what I think...
*(*array) == array[0][0]
*(*array + 1) == array[0][1]
*(*array + 2) == array[0][2]
*(*array + 3) == array[1][0]
*(*array + 4) == array[1][1]
etc...
-
*( *array ) == array[0][0]
*( *( array + 0 ) + 1 ) == array[0][1]
*( *( array + 0 ) + 2 ) == array[0][2]
*( *( array + 1 ) + 0 ) == array[1][0]
*( *( array + 1 ) + 1 ) == array[1][1]
Pointer arithmetic is just like using subscripts just a bit harder to read.