I am having difficulty trying to use a pointer to print contents of an array. With the simple array below how could I use a pointer to print out the contents? I know I can use multi[x][x] but I would like to use a pointer instead. Is this where I need to learn casting? I am just printing different variables so I can learn how this works. Any help using a pointer of some type to print the contents of my array is greatly appreciated. One row at a time would be nice.
Code:
int multi[3][4] = {{1,2,3,4},{5,6,7,8},{9,10,11,12}};
int (*ptr)[4], count;
ptr = multi;
printf("%d\n", ptr);
printf("%d\n", *ptr);
printf("%d\n", multi);
printf("%d\n", multi[0]);
printf("%d\n", multi[0][0]);
++ptr;
printf("%d\n", ptr);
printf("%d\n", *ptr);
printf("%d\n", multi);
printf("%d\n", multi[0]);
printf("%d\n", multi[0][0]);
printf("%u\n", sizeof(multi[0]));
printf("%d\n", sizeof(multi[0][0]));