Difference between Array and Pointers
One and only difference between an array and a pointer pointing to the beginning of the array is that the compiler keeps some extra information for the arrays, to keep track of their storage information. Lets understand it more with the example by using the sizeof operator : If we get the size of both an array and a pointer using the sizeof operator, sizeof(ptr) will give us how much space does the pointer itself occupies (4 in case of int) while sizeof array will give us, the amount of space occupied by the whole array (if array contains 10 elements of int data-type (2 bytes) , then this operator will give 20). In general, *(array+n) is equivalent to array[n].