Als «memory» getaggte Fragen

203
Was ist Speicherfragmentierung?

Ich habe gehört, dass der Begriff "Speicherfragmentierung" im Zusammenhang mit der dynamischen Speicherzuweisung in C ++ einige Male verwendet wurde. Ich habe einige Fragen zum Umgang mit Speicherfragmentierung gefunden, kann aber keine direkte Frage finden, die sich selbst damit befasst. So: Was...

195
Zweck der Speicherausrichtung

Zugegeben, ich verstehe es nicht. Angenommen, Sie haben einen Speicher mit einem Speicherwort mit einer Länge von 1 Byte. Warum können Sie nicht auf eine 4 Byte lange Variable in einem einzelnen Speicherzugriff auf eine nicht ausgerichtete Adresse zugreifen (dh nicht durch 4 teilbar), wie dies bei...

166
Wie funktionieren Cache-Zeilen?

Ich verstehe, dass der Prozessor Daten über Cache-Zeilen in den Cache bringt, was - zum Beispiel auf meinem Atom-Prozessor - ungefähr 64 Bytes gleichzeitig einbringt, unabhängig von der Größe der tatsächlich gelesenen Daten. Meine Frage ist: Stellen Sie sich vor, Sie müssen ein Byte aus dem...

161
String-Literale: Wohin gehen sie?

Ich interessiere mich dafür, wo String-Literale zugewiesen / gespeichert werden. Ich habe hier eine faszinierende Antwort gefunden : Das Definieren einer Zeichenfolge inline bettet die Daten tatsächlich in das Programm selbst ein und kann nicht geändert werden (einige Compiler erlauben dies...

156
Setzen der Variablen nach free auf NULL

In meiner Firma gibt es eine Codierungsregel, die besagt, dass die Variable nach dem Freigeben von Speicher auf zurückgesetzt wird NULL. Zum Beispiel ... void some_func () { int *nPtr; nPtr = malloc (100); free (nPtr); nPtr = NULL; return; } Ich habe das Gefühl, dass in Fällen wie dem...

153
Funktionieren Klammern in C als Stapelrahmen?

Wenn ich eine Variable innerhalb eines neuen Satzes von geschweiften Klammern erstelle, ist diese Variable dann auf der schließenden Klammer vom Stapel gefallen oder hängt sie bis zum Ende der Funktion? Beispielsweise: void foo() { int c[100]; { int d[200]; } //code that takes a while...