I am very confused with the following thing
#include <stdio.h>
int main(void)
{
int array[3]={1,2,3};
int (*p)[3];
p = &array;
/* Here p contians address of the array */
return 0;
}
Here p contains the adddress of the array. I am very confused why p does not give me the first value that is 1. I know it is very common question but please explain me. I know p is of type int ()[3]. How to proceed step by step to understand accessing of each element in the array.