Zurück zu: C Tutorial
Speicher in C
Es ist wichtig zu verstehen, wie Speicher in C funktioniert. Wenn Sie eine Basisvariable erstellen, reserviert C automatisch Speicherplatz für diese Variable. Eine int
Variable beispielsweise belegt normalerweise 4 Byte Speicher, während eine double
Variable 8 Byte Speicher belegt.
Mit dem Operator sizeof
können Sie die Größe verschiedener Typen ermitteln:
Beispiel
int myInt;
float myFloat;
double myDouble;
char myChar;
printf("%lu\n", sizeof(myInt)); // 4 bytes
printf("%lu\n", sizeof(myFloat)); // 4 bytes
printf("%lu\n", sizeof(myDouble)); // 8 bytes
printf("%lu\n", sizeof(myChar)); // 1 byte
Warum ist es wichtig, das zu wissen?
Wenn Sie ein Programm erstellen, das zu viel oder unnötig viel Speicher beansprucht, kann dies zu einer langsamen und schlechten Leistung führen.
In C müssen Sie den Speicher selbst verwalten. Das ist eine komplizierte Aufgabe, aber bei richtiger Anwendung auch recht leistungsfähig: Die ordnungsgemäße Verwaltung des Computerspeichers optimiert die Leistung des Programms. Daher ist es nützlich, wenn Sie wissen, wie Sie Speicher freigeben, wenn er nicht mehr benötigt wird, und nur so wenig wie nötig für die Aufgabe verwenden.
In den vorherigen Kapiteln haben Sie etwas über Speicheradressen und Zeiger gelernt.
Beide sind für die Speicherverwaltung von Bedeutung, da über Zeiger direkt mit dem Speicher gearbeitet werden kann.
Aber Vorsicht: Zeiger müssen mit Vorsicht behandelt werden, da die Möglichkeit besteht, dass in anderen Speicheradressen gespeicherte Daten beschädigt werden.
Speicherverwaltung
Unter Speicherverwaltung versteht man den Prozess, wie viel Speicher ein Programm durch Zuweisung, Neuzuweisung und Freigabe (oft als „Freigeben“ bezeichnet) verwendet. Wir werden jedes dieser Themen in den folgenden Kapiteln vorstellen.