#include <stdio.h>
int main( )
{ const int a = 3 , b = 4 ;
int c[ a] [ b] = { 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 , 11 , 12 } ;
int * ptr = * c;
printf ( "\n %u" , ptr) ; //713549104
printf ( "\n pointing to 2nd row=%u" , ptr + 2 ) ; //713549112
printf ( "\n 1st element in 2nd row=%u" , * ( ptr + b) ) ; // 5
printf ( "\n 3rd element in 2nd row=%u" , ( * ( ptr + b) + 2 ) ) ; //OUTPUT 7
printf ( "\n content available in 2nd row, 3rd column=%u \n " , ptr[ b + 2 ] ) ; //7
for ( int i = 0 ; i < a ; i++ ) {
printf ( "\n " ) ;
for ( int j = 0 ; j < b; j++ )
printf ( "%2u " , * ( ptr + i * b + j) ) ;
}
}
I2luY2x1ZGUgPHN0ZGlvLmg+CgppbnQgbWFpbigpCntjb25zdCBpbnQgYSA9IDMsIGIgPSA0OwogICAgaW50IGNbYV1bYl0gPSB7IDEsIDIsIDMsIDQsIDUsIDYsIDcsIDgsIDksIDEwLCAxMSwgMTIgfTsKCiAgICBpbnQqIHB0ciA9ICpjOwoKICAgIHByaW50ZigiXG4ldSIsIHB0cik7IC8vNzEzNTQ5MTA0CgogICAgcHJpbnRmKCJcbnBvaW50aW5nIHRvIDJuZCByb3c9JXUiLCBwdHIgKyAyKTsgLy83MTM1NDkxMTIKCiAgICBwcmludGYoIlxuMXN0IGVsZW1lbnQgaW4gMm5kIHJvdz0ldSIsICoocHRyICsgYikpOyAvLyA1CgogICAgcHJpbnRmKCJcbjNyZCBlbGVtZW50IGluIDJuZCByb3c9JXUiLCAoKihwdHIgKyBiKSArIDIpKTsgLy9PVVRQVVQgNwoKICAgIHByaW50ZigiXG5jb250ZW50IGF2YWlsYWJsZSBpbiAybmQgcm93LCAzcmQgY29sdW1uPSV1IFxuIiwgcHRyW2IgKyAyXSk7IC8vNwogICAgCiAgICBmb3IgKGludCBpID0gMDsgaSA8IGEgOyBpKyspewogICAgCXByaW50ZigiXG4iKTsKICAgIAlmb3IgKGludCBqID0gMDtqIDwgYjtqKyspCiAgICAJCXByaW50ZigiJTJ1ICIsICoocHRyICsgaSAqIGIgKyBqKSk7CiAgICB9Cn0=