Skip to main content

Was ist eine Reihe von Zeigern?

Ein Array von Zeigern ist ein Standard -Array -Datentyp, der eine Abfolge von Speicher enthält, die an Datentypen gerichtet sind, anstatt andere Skalartypen wie Ganzzahlen oder schwimmende Punktzahlen zu halten.Durch die Verwendung einer Reihe von Zeigern kann ein Programm eine Reihe von nahezu allen Datentypen, Datenstruktur, Klasse oder sogar Funktion haben.Eine effiziente Sortierung einer Reihe von Zeigern ist ebenfalls möglich, damit die Adressen bei Bedarf an ihrem physischen Standort im Computerspeicher ausgerichtet werden können.Einige der Komplikationen bei der Verwendung einer Reihe von Zeigern sind, dass die Daten leicht beschädigt werden können und dass die Art der Daten, auf die hingewiesen wirdDas Konzept wurde ursprünglich konzipiert.Hochstufe Sprachen, die die Speicherverwaltung automatisieren, verwenden keine Zeiger auf die gleiche Weise wie Sprachen auf niedrigerer Ebene, obwohl technisch gesehen eine Reihe von Klassenobjekten auf hoher Ebene, objektorientierter Sprache eine Reihe von Zeigern ist.Trotzdem können sie nicht auf die gleiche Weise verwendet oder manipuliert werden.In einer Sprache auf niedriger Ebene hält das Array tatsächlich einen Ganzzahlwert, der die direkte Adresse des Zeigers im Speicherhaufen darstellt.In den meisten Sprachen auf hoher Ebene ist diese Funktionalität nicht möglich, obwohl alternative Paradigmen existieren.

Einer der Aspekte, die eine Reihe von Zeigern als Programmierwerkzeug wertvoll machen, ist, dass die Zeiger auf jede Art von Datenweisen verweisen können.Der Zeiger ist ein Datentyp für sich, obwohl sein einziger Zweck darin besteht, auf einen anderen Datentyp hinzuweisen.Dies bedeutet, dass eine Reihe von Zeigern tatsächlich eine Vielzahl von Datentypen im selben Array enthalten kann, obwohl das Programm einen Mechanismus benötigen müsste, um zu verfolgen, was jeder Zeiger bezogenZeigen Sie auf kompilierte Programmcode im Speicher.Dies ermöglicht ein Array, auf Funktionen zu verweisen, nicht nur auf Daten.Eine Reihe von Funktionen kann eine dynamische numerische Referenzierung von Code ermöglichen.Dies kann nützlich sein, wenn ein Sprachdolmetscher oder eine andere Art von Software programmiert wird, die bestimmte Funktionen basierend auf unvorhersehbaren Eingaben aufrufen muss, ohne dass große bedingte Aussagen wie Switchblöcke erforderlich sind.

Einige Probleme, die durch eine Reihe von Zeigerdaten präsentiert werdendie Adresse zu verlieren, zu verhindern, dass dieses Speicher später befreit wird, und die Wahrscheinlichkeit, dass eine Adresse durch eine unbeabsichtigte Operation wie Addition verfälscht werden kann.Versuche, auf eine falsche Adresse zuzugreifen, können dazu führen, dass beschädigte Daten gelesen werden oder in extremen Fällen wie einer fehlgeschlagenen Initialisierung ein Segmentierungsfehler, der das Programm unerwartet beendet.Vorsichtliche Programmierung kann dazu beitragen, die Möglichkeit dieser Ereignisse zu mildern.