
Zitat von
Bastler:
Dass wenn er bei 1 anfängt auch bis length geht ist ja dann irgednwie logsich...
logisch schon, aber nicht jeder kommt dann auch darauf

Zitat von
Bastler:
Obwohl himitsu, du hast mich glaub ich etwas falsch verstanden...
wieso?
du hast einfach nur in einen falschen Speicherbereich geschrieben
und die "Spätfolgen" davon waren dann z.B. deine
Exception.
Es ist halt immer gefährlich wenn man an falschen stellen rumschreibt, egal wo.
Der Delphi-String ist praktisch intern so aufgebaut
Delphi-Quellcode:
TAnsiStringInfo = packed Record
RefCount: LongInt; // Refferenzzählung
ElementCount: LongInt; // Stringlänge
Data: packed Array[1..Self.ElementCount] of AnsiChar;
End;
buffer[i]
= TAnsiStringInfo(buffer).Data[i]
= @TAnsiStringInfo(buffer).Data + (i - 1)
tja und somit kann kann man überall rumschreiben und wichtige Daten zerstören
Ein Therapeut entspricht 1024 Gigapeut.