Unterschied zwischen Array und Zeiger

Das Hauptunterschied zwischen Array und Zeiger ist das ein Array ist eine Datenstruktur, die eine Auflistung von Elementen desselben Datentyps speichert, während ein Zeiger eine Variable ist, die die Adresse einer anderen Variablen im Computerspeicher enthält.

Array und Pointer sind zwei Konzepte, die in Programmiersprachen wie C und C ++ verwendet werden. Ein Array ist eine Sammlung von Daten, die eine feste Anzahl von Werten desselben Datentyps enthalten. Um beispielsweise die Noten von 10 Schülern zu speichern, kann der Programmierer ein Array erstellen, das 10 Ganzzahlen speichern kann. Andererseits ist ein Zeiger eine Variable, die die Adresse einer anderen Variablen enthält. Zeiger helfen, auf Speicher zuzugreifen und Speicheradressen zu bearbeiten. 

Wichtige Bereiche

1. Was ist ein Array?
     - Definition, Funktionalität
2. Was ist ein Zeiger?
    - Definition, Funktionalität
3. Beziehung zwischen Array und Zeiger
    - Gliederung der Vereinigung
3. Unterschied zwischen Array und Zeiger
    - Vergleich der wichtigsten Unterschiede

Schlüsselbegriffe

Array, Zeiger

Was ist ein Array?

Ein Array ist eine Datenstruktur, in der eine feste Anzahl von Elementen desselben Typs gespeichert ist. Alle Elemente des Arrays befinden sich in zusammenhängenden Speicherorten.

Abbildung 1: Array

Angenommen, Sie müssen Werte von 50 Ganzzahlen speichern. Es ist möglich, Variablen für jede ganze Zahl zu erstellen, dies ist jedoch schwieriger und zeitaufwendiger. Ein Array kann verwendet werden, um dieses Problem zu beheben.

int Zahlen [50];

Die obige Anweisung ordnet ein Array namens number zu, in dem fünfzig ganze Zahlen gespeichert werden können. Ein bestimmtes Element des Arrays kann anhand des Index bewertet werden. Der Startindex ist 0. Da das Array 50 Elemente enthält, hat das letzte Element den Index 49.

Zahlen [1] = 30;

Die obige Anweisung weist der 1 den Wert 30 zust Index des Zahlenfeldes.

Darüber hinaus können Arrays anderer Datentypen erstellt werden.

Zum Beispiel der doppelte Durchschnitt [10]; erstellt ein Array mit dem Namen Durchschnitt. Es können 10 Doppelwerte gespeichert werden.

Ein Array ist einfacher zu erstellen und auf Elemente zuzugreifen. Auf der anderen Seite hat ein Array eine feste Größe. Wenn die Arraygröße 10 ist, können nicht 20 Elemente gespeichert werden. Mit anderen Worten ist die Speicherzuordnung für ein Array statisch.  

Was ist ein Zeiger?

Eine Variable ist ein Speicherort zum Speichern eines Werts. Jeder Speicherplatz hat eine Adresse, um ihn zu identifizieren.

Abbildung 2: Zeiger

Ein Zeiger ist eine Variable, die die Adresse einer anderen Variablen speichert. Der Zeiger wird vor dem Speichern einer Variablenadresse deklariert. Das Sternchen * dient zur Deklaration eines Zeigers.

int * ptr;

Das ptr ist ein Zeiger auf eine Ganzzahlvariable.

double * ptr1;

Ptr1 ist ein Zeiger auf eine doppelte Variable. Siehe den folgenden Code.

Abbildung 3: Programm mit Zeigern

Die Variable 'a' enthält den Wert 20. Der Ptr ist ein Zeiger auf eine ganze Zahl. In Zeile 8 wird ptr die Adresse der Variablen a zugewiesen. Jetzt zeigt ptr auf a. Wenn Sie also den mit ptr angezeigten Wert drucken, erhalten Sie den Wert von a.

Wenn keine Adresse zugewiesen werden muss, kann der Zeiger mit einem NULL-Wert zugewiesen werden. Dieser Zeigertyp wird als Nullzeiger bezeichnet.

int * ptr = NULL;

Beziehung zwischen Array und Zeiger

Siehe das untenstehende Programm.

Abbildung 4: Arrays mit Zeigern

Es gibt ein Array namens arr. Es enthält 5 ganze Zahlen. Das ptr ist ein Zeiger auf eine ganze Zahl. In Zeile 8 wird arr dem ptr zugewiesen. Daher zeigt der Ptr auf das 0. Indexelement des Arrays. Wenn Sie den Wert von ptr drucken, wird der Wert 0 angezeigtth Indexelement. Es ist 10.

Unterschied zwischen Array und Zeiger

Definition

Array ist eine Datenstruktur, die aus einer Sammlung von Elementen besteht, die jeweils durch den Arrayindex identifiziert werden. Ein Zeiger ist ein Programmiersprachenobjekt, das die Speicheradresse eines anderen im Computerspeicher befindlichen Werts speichert.

Basis

Während sich ein Array auf eine Gruppe von Datenelementen bezieht, ist ein Zeiger eine Variable, die auf einen anderen Speicherort zeigt.

Syntax

Array-Syntax - Datentyp ArrayName [Datentyp];

Zeigersyntax - Datentyp * Variablenname;

Verwendungszweck

Obwohl Arrays zum Zuordnen von Speicher mit fester Größe (statischer Speicher) verwendet werden können, können Zeiger für die dynamische Speicherzuweisung verwendet werden.

Fazit

Die beiden Begriffe Array und Pointer sind zwei Programmierkonzepte. Der Unterschied zwischen Array und Zeiger besteht darin, dass ein Array eine Datenstruktur ist, die eine Sammlung von Elementen desselben Datentyps speichert, während ein Zeiger eine Variable ist, die die Adresse einer anderen Variablen im Computerspeicher enthält.

Referenz:

1. „Arrays in C.“ unter www.tutorialspoint.com, Tutorials Point, erhältlich hier.
2. „Zeiger in C.“ www.tutorialspoint.com, Tutorials Point, hier verfügbar.

Bildhöflichkeit:

1. "CPT-Programmier-Array" Von Pluke - Eigene Arbeit (CC0) über Commons Wikimedia
2. “Zeiger” von Diese Datei wurde erstellt von Benutzer: SvenTranslation Eigene Arbeit (CC BY-SA 3.0) über Commons Wikimedia