Code: Alles auswählen
string1.s="hallo "
string2.s="welt"
string1=string1+string2
Meine Vorstellung:
In "string1" wird eigentlich nur die Adresse des ersten Bustaben gespeichert und es werden im Arbeitspeicher 7 Bytes gesucht, die noch nicht benutzt werden und da dann in die ersten 6 der jeweilige ASCII-Code für den jeweiligen Buchstaben reingeschrieben und in den letzten eine 0.
Wenn da jetzt der string2 drangehängt wird, wird die 0 durch ein 'w' ersetzt und der Rest in die Bytes danach reingeschrieben.
Aber was ist, wenn der Platz da schon benutzt wird?
[23056][23057][23058][23059][23060][23061][23062][23063]
'h'-------'a'---------'l'--------'l'------'o'-------' '------'w'----(hier steht schon was-das müsste überschrieben werden)