Nach diesem Kommentar habe ich versucht zu googeln, warum, aber mein google-fu ist fehlgeschlagen.
Kommentar vom Link:
[...] Wichtig ist jedoch, dass Arrays und Zeiger in C unterschiedliche Dinge sind.
Angenommen, Sie verwenden keine Compilererweiterungen, können Sie im Allgemeinen kein Array selbst an eine Funktion übergeben, aber Sie können einen Zeiger übergeben und einen Zeiger indizieren, als wäre er ein Array.
Sie beschweren sich effektiv darüber, dass Zeiger keine Länge haben. Sie sollten sich darüber beschweren, dass Arrays nicht als Funktionsargumente übergeben werden können oder dass Arrays implizit zu Zeigern degradiert werden.