Atribuindo * & array a um ponteiro

O trecho a seguir é deHarbinson, Steele C: um manual de referência (5ª edição). De acordo com o livro, as duas atribuições dep são equivalentes.

7.5.6 Operador de endereço

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

No entanto, de acordo com o FAQ CPergunta 6.12 a é do tipo ponteiro paraint enquanto que&a é do tipo ponteiro para matriz deint.

Portanto, devemos receber um erro de tipo na segunda atribuiçãop = *&a porque estamos tentando atribuir uma matriz deint para um ponteiro.

Por que a tarefap = *&a corrigir?

questionAnswers(2)

yourAnswerToTheQuestion