matrix pointer c
snippet in c
accessing elements 2D array using pointers
user5029
#include<stdio.h>
//accessing elements of 2D array using pointers
int main(void){
int arr[4][4]={{1,2,3,4},{5,6,7,8},{9,0,1,2}};
int *ptr = &arr;
//accessing the elements of 2D array using ptr
for(int i=0;i<3;i++){
for(int j=0;j<4;j++)
printf("%d ",*((ptr+i*4)+j)); //4 is the number of columns
//*((ptr+i*4)+j) is similar to arr[i][j]
printf("\n");
}
return 0;
}
matrix pointer c
user5338
/*any type*/ array2d[nRows][nCol];
// normal 2D array accessing
array2d[iRow][jCol] = value1;
bool b = array2d[iRow][jCol] == value1;
// accessing 2D array with pointers
*(*(array2d + iRow) + jCol) = value2;
b = *(*(array2d + iRow) + jCol) == value2;
use of pointer in multidimensional array
user6054
arr[i][j] = *(ptr + (i x no_of_cols + j))