Dopo aver visto (e chiesto!) tante domande simili a
What does
int (*f)(int (*a)[5])
mean in C?
e anche vedendo che avevano fatto un programma per aiutare le persone a capire la sintassi C, non posso fare a meno di chiedermi:
Perché la sintassi di C è stata progettata in questo modo?
Ad esempio, se dovessi progettare i puntatori, tradurrei "un puntatore a un array di 10 puntatori" in
int*[10]* p;
e non
int* (*p)[10];
che ritengo che la maggior parte delle persone sarebbe d'accordo è molto meno semplice.
Quindi mi chiedo, perché la sintassi, non intuitiva? C'è stato un problema specifico risolto dalla sintassi (forse un'ambiguità?) Di cui non sono a conoscenza?