Verwendung von Zeigern

February 17

Verwendung von Zeigern

Ein Computer verwendet seinen Speicher zum Speichern von Daten mit Werten, z. B. Zahlen, Zeichen und Bit-Werte. Daten werden in Speicherzellen identifiziert mit einem einzigartigen Speicheradresse gespeichert. Zeiger sind Datenstrukturen, die keine Werte enthalten; Stattdessen enthalten Zeiger eine Speicheradresse einer Speicher-Zelle, die einen Wert speichert. Zeiger sind nützlich, weil sie Sie Datenstrukturen ohne eine definierte Größe (z. B. Arrays und verknüpfte Listen) zu konstruieren erlauben, zuordnen und freigeben dynamischen Speicher und indirekte Datenmanipulation durchführen.

C-Strings

Programming Languages Programmiersprachen arbeiten mit begrenzten Ressourcen. Ein Programm muss wissen, wieviel Speicher es vor Ausführung benötigen. Dadurch entsteht das Problem der Verwaltung eines Datentyps, der hat keine definierte Größe (z. B. ein Programm, das 'Paragraphen, mit jedem Absatz eine unterschiedliche Länge liest'). Zeiger-Adresse diese Situation in Form von C-Strings. Eine C-Zeichenfolge besteht durch einen Zeiger, der auf das erste Zeichen in der Zeichenfolge und ein Zeichen, das signalisiert das Ende der Zeichenfolge verweist (z. B. die Zeilenendemarke "\n"). Der Zeiger wird um 1 erhöht jedes Mal, bis er bis zum letzten Zeichen ("\n") verweist.

Verknüpfte Listen

Eine verknüpfte Liste ist eine Liste, die seiner Größe erhöht die Liste neue Elemente hinzugefügt werden. Im Gegensatz zu Arrays und C-Zeichenfolgen, die nacheinander im Speicher speichern, werden verknüpfte Listen nicht notwendigerweise im angrenzenden Speicheradressen gespeichert. Verknüpfte Listen werden durch Knoten gebildet, und jeder Knoten verweist auf den nächsten Knoten. Der Vorteil dieser Datenstruktur ist, dass die Liste ändert sich seine Größe auf der Grundlage von Benutzeranforderungen.

Dynamische Speicherreservierung

Programme weisen normalerweise den Speicher, wenn sie erstellt werden. Manchmal ist der reservierte Speicher nicht genug Daten mit unbekannter Größe zu behandeln. Programmierer verwenden eine Technik namens dynamische Speicherreservierung sicher sein, dass das Programm dieses Problem überwunden werden kann. Dynamischer Speicher erfolgt mithilfe eines Zeigers auf eine Speicheradresse außerhalb des Speichers beiseite zunächst durch das Programm hinzu. Zeiger freigeben auch den Speicher, sobald es nicht mehr benötigt wird.

Indirekte Datenmanipulation

Programmiersprachen erfordern oft Änderungen des Datenwerts. Programme verwenden Funktionen zum Ändern und Operationen auf die Daten. Aufgrund der Hierarchie auf Programme die Daten ständig kopiert und freigegeben, sobald es an Funktionen übergeben wird. Funktionen die Daten ändern, aber sobald die Daten verwendet werden, gehen diese Änderungen verloren. Mit Zeigern statt Standarddatentypen sorgt dafür, dass wir eine Speicheradresse an Funktionen übergeben werden. Auf diese Weise bleiben alle Änderungen an den Daten auf die Speicheradresse für den Rest der Ausführung des Programms.