Wie du schon sagst, sind var
und const
technisch das gleiche.
Nein, es geht mir nicht um var=const, sondern um var=Pointer.
Wie soll ich denn bitte
const Buffer
von einem unbestimmten Typen deklarieren, dessen Größe ich nicht kenne.
Bei Var geht das theoretisch, eben weil es nur ein Pointer ist.
Const übergibt den Wert (was hier ja gewünscht ist), aber das geht nur mit fester Größe.
Kein Typ heißt aber -> variable Größe.
Heißt: Eine Deklaration mit Const ist hier gar nicht möglich!
Und die Größe für Buffer und Text kommt eben über BufSize rein.
Zur Laufzeit. Aber bei Const muss die Größe schon zur Kompilierungszeit bekannt sein, eben weil es kein Pointer ist.
Ein zusätzliches und eigentlich unnötiges @ ?
Das ist aber reine Kosmetik, denn es kommt bei der Prozedur ja genauso an. Und das ist es ja, weshalb Const an der Stelle nicht geht.