Uhm...è tutto esattamente come dici tu però non mi spiego ancora molto il perchè!

Tratto dal Deitel & Deitel "Fondamenti di programmazione C++" :

Array e puntatori sono strettamente correlati in C++ e possono essere utilizzati in modo equivalente.
Il nome di un array è in realtà un puntatore costante.
Supponiamo di dichiarare l'array di interi b[5] e la variabile puntatore bptr.Il nome dell'array b senza indici è un puntatore al primo elemento dell'array.
.

Questo riporta il Deitel e questo sapevo, solo che non mi spiego perchè &b = b !!!