Neuen Wert vor Wert im Speicher schreiben
-
Hi,
wie kann ich einen Wert vor einem anderen Wert im Speicher schreiben ohne einen Buffer zu verwenden?
Danke
-
etwa so: (&wert)[-1] = irgendwas; aber ob sowas sinnvoll ist, ist 'ne andere frage.
-
Kann es dann nicht sein, dass ich vorhergehende Werte überschreibe?
Ich dachte da mehr an realloc mit der Adresse des alten Wertes, der Länge des Alten Wertes + den des neuen Wertes. Dann komme ich aber nicht weiter
-
MeBeNoob schrieb:
Kann es dann nicht sein, dass ich vorhergehende Werte überschreibe?
mit ziemlicher sicherheit.
MeBeNoob schrieb:
Ich dachte da mehr an realloc mit der Adresse des alten Wertes, der Länge des Alten Wertes + den des neuen Wertes.
erweitern mit realloc geht nur, wenn der speicher vorher schon mit 'malloc' o.ä. alloziert wurde. 'normale' variablen haben feste längen.
-
Mit einem Buffer habe ich es inzwischen hinbekommen. Ich habe gehofft, es gäbe einen anderen Weg, als die enorme Datenmenge (kurzzeitig) zu verdoppeln...
-
Listen sind in deinem Fall vielleicht besser geeignet ...