When we assign a pointer to a variable we are tend to use the '&' operator as in :
int a = 10;
int *aa = &a;
If not used it gives error. But I came across this code where pointer is assigned to array arr but '&' isn't used
int arr[10];
int *a = &arr;
and on using it shows the error: cannot convert 'int ()[10]' to 'int' in initialization.