300 Array & Pointer
int(* a) [3];
10 ar = mat ;
printf (" ar [2][2] element is = %d \n" , *(*( ar +2) +2) );
12 printf (" ar [0][2] element is = %d \n" , *(*( ar +0) +2) );
return0;
14}
✌
✆
✞
mat [2][2] element is = 99
mat [0][2] element is = 53
✌
✆
✞
# include< stdio .h >
2
intmain () {
4 intArr [3][3] = {
{1 , 2, 3} ,
6 {4 , 5, 6} ,
{7 , 8, 9}
8 };
int(* mat ) [3];
10 mat = Arr ;
printf (" Element at mat [0][1] = % d\n" , *(*( mat +0) +1) );
12 printf ("8 th element from positino of mat [0][0] = %d\n" ,
(*( mat + 0) ) [8]) ;
14 printf ("6 th element from position of mat [0][2] = %d\n" ,
(*( mat + 0) + 2) [6]) ;
16 return0;
}
✌
✆
✞
Element at mat [0][1] = 2
8 th element from the position of mat [0][0] = 9
6 th element from the position of mat [0][2] = 9
✌
✆
Following is an example in which a 3D matrix is accessed by using a pointer.
✞
1# include< stdio .h >
3intmain () {
intArr [3][3][3] = {
5 {/* [x ][ y] matrix with [z =0] */
{11 , 12 , 13} ,
7 {14 , 15 , 16} ,
{17 , 18 , 19}
9 },
{/* [x ][ y] matrix with [z =1] */
11 {21 , 22 , 23} ,
{24 , 25 , 26} ,
13 {27 , 28 , 29}
},
15 {/* [x ][ y] matrix with [z =2] */