Asignación de * y matriz a un puntero

El siguiente extracto es deHarbinson, Steele C: A Reference Manual (5th Edition). Según el libro, las dos asignaciones ap son equivalentes

7.5.6 Operador de direcciones

int a[10], *p;
p = a; p = *&a;

Sin embargo, de acuerdo con las preguntas frecuentes de CPregunta 6.12 a es de tipo puntero aint mientras&a es de tipo puntero a matriz deint.

Entonces deberíamos obtener un error de tipo en la segunda asignaciónp = *&a porque estamos tratando de asignar una matriz deint a un puntero

¿Por qué es la tarea?p = *&a ¿correcto?

Respuestas a la pregunta(2)

Su respuesta a la pregunta