Sven P. schrieb:
> Er hat aber Recht, lon ist ein Vektor und kein Zeiger. Aber ein Vektor
> kann in bestimmten Kontexten zu einem Zeiger zerfallen, aber nicht
> immer.
Kopfnuss:
> >quatsch. lon ist ebend kein pointer sondern ein char[11]. Das is in c
> >ein kleiner aber feiner Unterschied.
> In gewissen Kontexten ist das das selbe; kann lon wie ein Zeiger
> verwendet werden. Z.B. ist &lon[0] das selbe wie lon.
Ja, das schon. Aber, und das finde ich, ist ein wichtiges Detail,
konvertiert das "Objekt" lon unter keinsten Umständen zu einem
Pointer. Der Compier kann den Arraynamen zu einen Pointer konvertieren,
dieser Pointer ist aber nicht unter lon gespeichert und deswegen kann
man in diesem Fall lon nach wie vor nicht als Pointer behandeln. Und
deswegen gibt sizeof bei lon nach wie vor auch die Größe des Arrays
zurück, weil es immer noch ein Array ist.
Der Pointer, in welcher das Array mal konvertiert wurde, liegt irgendwo
flüchtig im Register oder RAM. Auf den kann man aber nicht zugreifen.
Und ich denke darum ging es hier.