Между массивами и указателями существует прямая связь. Когда объявляется массив, например
int arr[25];
то этим объявляется несколько больше, чем только выделения памяти для двадцати пяти элементов типа int.А именно, идентификатор массива arr определяется как константный указатель на первый элемент массива (адрес первого элемента массива &arr[0]).
Так как идентификатор массива определяется как адрес. то следующее присваивание является допустимым
int arr[25];
int *ptr;
ptr=arr;
последний оператор можно записать в эквивалентной форме
ptr=&arr[0];