Il n'y a d'equivalence entre pointeurs et tableaux en C et en C++ (il y en avait une en B, un ancetre
du C). Il y a un certain nombre de caracteristiques syntaxiques et semantiques qui entretiennent la
confusion:
- lors de la definition des parametres d'une fonction, un parametre de type tableau est ajuste en un
parametre de type pointeur;
- dans beaucoup de contextes (les exceptions en C sont les arguments de sizeof et de &, en C++ il
y en a plus, liees a la resolution des surcharges et a la deduction des arguments template), une valeur
de type tableau est convertie implicitement en un pointeur vers son premier element. Contrairement
a ce que certains pensent -- et ce qu'une formulation telle que celle de Joel peut laisser croire --
cette conversion n'est en rien liee au fait que le tableau soit une variable et donc nomme. Elle a lieu
pour n'importe quelle lvalue de type tableau et empeche de fait des rvalues de type tableau d'exister
(sauf en temps de sous-objet de rvalue de type struct).