Ich versuche, ein Assembly-Programm mit MASM zu schreiben. Ich verwende GetProcessHeap, um den Heapspeicher abzurufen, und HeapAlloc und HeapFree, um Heapspeicherabschnitte zuzuweisen und freizugeben. Ich frage mich, was mit Speicherorten passiert, wenn sie freigegeben werden, vorausgesetzt, der Speicherort wurde nicht erneut HeapAlloc'd? Behalten sie ihre alten Werte bei, oder werden sie ohne mein Wissen überschrieben?Was passiert mit dem Speicher nach der Freigabe?
Kann ich auch auf die freigegebenen Speicherplätze zugreifen?
Wie [msdn sagt] (https://msdn.microsoft.com/en-us/library/windows/desktop/aa366701.aspx): "Sie sollten in keiner Weise auf Speicher verweisen, der von HeapFree freigegeben wurde . " Wenn Sie das tun, sind alle Wetten aus. – Jester
Ich kann mir nicht vorstellen, dass sie die Bandbreite verbrennen würden, um diesen Speicher zu löschen oder zu ändern, wenn er freigegeben wird. Aber das bedeutet immer noch nicht, dass du dich damit anlegen solltest ... wie bereits gesagt, sind alle Wetten aus ... –