Dynamisch zugewiesenes Array C ++ zugewiesen

Dynamisch zugewiesenes Array C ++ zugewiesen

Arrays sind eine sehr wichtige Datenstruktur in C ++, die dazu dienen, ähnliche Elementtypen zu halten. Arrays sind hauptsächlich in zwei verschiedene Typen unterteilt.e. statisch und dynamisch. Die statischen Arrays sind diejenigen. In diesem Artikel werden wir ausdrücklich über die dynamischen Arrays in C sprechen++. Darüber hinaus werden wir ihre Zuteilung und Deallokation besondere Aufmerksamkeit schenken, indem wir ein detailliertes Beispiel in Ubuntu 20 mit Ihnen teilen.04.

Dynamisch zugewiesene Arrays in c++

Wir haben bereits festgestellt, dass die Größe eines dynamischen Arrays zur Laufzeit definiert ist. Man könnte sich jedoch fragen, warum wir die dynamisch zugewiesenen Arrays in erster Linie benötigen, wenn wir die statischen Arrays bequem verwenden können? Manchmal begegnen Sie solchen Situationen, in denen die Größe eines Arrays anfangs nicht bekannt ist. In diesen Fällen können Sie die Array -Größe als Eingabe des Benutzers zur Laufzeit erwerben.

Dies ist jedoch bei den statischen Arrays jedoch nicht möglich, da die Größe eines statischen Arrays, das einst in einem Code definiert wurde, nicht geändert werden kann. Hier kommen die dynamisch zugewiesenen Arrays ins Spiel, die die Arrays jeder gewünschten Größe zur Laufzeit definieren können. Die dynamischen Arrays in C ++ können problemlos mit dem Schlüsselwort „Neu“ erstellt werden. Die genaue Syntax wird später in diesem Artikel geklärt.

Ein wichtiger Punkt, der hier jedoch bezeichnet werden muss. Andererseits werden die dynamisch zugewiesenen Arrays immer auf dem Haufen erstellt, und Sie müssen den Speicher, der von einem dynamischen Array besetzt ist. Jetzt müssen Sie das unten diskutierte Beispiel sehen, um die Verwendung der dynamisch zugewiesenen Arrays zu verstehen.

Verwenden der dynamisch zugewiesenen Arrays in C ++ in Ubuntu 20.04

In diesem Beispiel möchten wir Ihnen die Verwendung der dynamisch zugewiesenen Arrays in C beibringen++. Wir werden Ihnen sagen, wie Sie ein dynamisches Array zur Laufzeit deklarieren und initialisieren können. Dann werden wir die Elemente des dynamisch zugewiesenen Arrays anzeigen. Schließlich zeigen wir Ihnen, wie Sie den Speicher, der vom dynamischen Array in C besetzt ist++. Um all dies zu lernen, müssen Sie den im folgenden Bild angezeigten Code sehen:

In diesem C ++ - Programm haben wir unsere Funktion „main ()“, in der wir eine ganzzahlige "Num" definiert haben. Diese Ganzzahl entspricht der Größe unseres dynamischen Arrays, das wir später erstellen werden. Anschließend zeigten wir eine Nachricht auf dem Terminal, in der der Benutzer aufgefordert wurde, eine beliebige Größe ihrer Auswahl für das dynamische Array einzugeben. Danach haben wir diese Größe als Eingabe vom Benutzer genommen. Mit Hilfe der Anweisung "int *array = new int (num)" haben wir dann ein dynamisches Array zur Laufzeit deklariert, das die Größe entspricht der "Num" -Variable. "Array" bezieht sich auf den Namen dieses Arrays.

Danach haben wir erneut eine Nachricht auf dem Terminal angezeigt, in der der Benutzer aufgefordert wurde, die Elemente dieses Arrays einzugeben. Auf diese Nachricht folgt eine „für“ -Schloop, die bis zur Größe des Arrays i iteriert.e. num. Innerhalb dieser Schleife haben wir die Elemente dieses dynamischen Arrays als Eingabe vom Benutzer genommen.

Nachdem das dynamische Array bevölkert war, wollten wir seine Elemente auf dem Terminal anzeigen. Dann haben wir eine weitere "für" Schleife, die wieder durch die Größe des dynamischen Arrays iteriert. Innerhalb dieser Schleife haben wir einfach die Array -Elemente am Terminal angezeigt. Danach wollten wir den Speicher, für das dieses dynamische Array besetzt ist, für das wir die Anweisung „Löschen [] Array löschen“ bewohnt haben. Schließlich haben wir die Anweisung „Array = NULL“ verwendet, um auch die Nullreferenz des dynamischen Arrays zu löschen, dessen Speicher wir gerade behandelt haben.

Nachdem wir diesen Code geschrieben hatten, wurden wir beim Kompilieren und Ausführen zuerst gebeten, die Größe des dynamischen Arrays einzugeben. Wir wollten, dass unser dynamisches Array von der Größe „5“ ist, wie im Bild unten gezeigt:

Sobald wir die Größe unseres dynamischen Arrays betraten, wurden wir gebeten, es zu bevölkern. Dazu haben wir die Zahlen von 1 bis 5 eingegeben, wie im folgenden Bild gezeigt:

Sobald wir die Eingabetaste drückten, nachdem wir unser dynamisches Array bevölkert hatten, wurden die Elemente auf dem Terminal gedruckt. Darüber hinaus ereignete sich auch die Deallokation des dynamischen Speichers, wodurch eine Benachrichtigung darüber auch auf dem Terminal erschien, wie im folgenden Bild gezeigt:

Jetzt werden wir den gleichen Code leicht optimieren. Bisher haben wir gelernt, wie wir ein dynamisches Array in C ++ initialisieren und seine Elemente auf dem Terminal anzeigen können. Obwohl wir auch den Code für die Bearbeitung dieses Speichers in unserem Programm aufgenommen haben, sind wir uns jedoch immer noch nicht sicher, ob das besetzte dynamische Speicher erfolgreich behandelt wurde oder nicht. Dazu werden wir versuchen, auf einen Teil dieses dynamischen Speichers zugreifen. Wenn es erfolgreich zugegriffen wird, bedeutet dies, dass die Speicherverkleidung nicht korrekt stattgefunden hat.

Wenn wir jedoch auf eine Fehlermeldung stoßen, während wir nach dem Umgang mit diesem Speicher auf diesen Speicher zugreifen, bedeutet dies, dass unser besetzter dynamischer Speicher jetzt erfolgreich behandelt wurde. Sie müssen sich den folgenden geänderten Code ansehen, um dies zu verstehen:

In diesem modifizierten C ++ - Code haben wir am Ende unseres Programms einfach eine Zeile hinzugefügt.e. Cout<

Als wir diesen Code kompilierten und ausgeführt haben, hat er sich vollkommen gut abgemeldet. Sobald diese letzte Zeile ausgeführt wurde. Dies wird im angehängten Bild angezeigt.

Dies bedeutet, dass die Deallokation unseres dynamischen Arrays erfolgreich stattgefunden hat. Diese Ausgabe impliziert auch, dass der Versuch, auf einen Speicherort zuzugreifen, der nicht mehr existiert, nur zu einem Laufzeitfehler und nicht zu einem Kompilierungsfehler führt. Dies bedeutet, dass ein solcher Code immer erfolgreich kompiliert wird und Sie einen solchen Fehler erst erfassen können, bis Sie Ihren Code tatsächlich ausführen.

Abschluss

Dieser Artikel zielte darauf ab, Ihnen die Verwendung der dynamisch zugewiesenen Arrays in C ++ in Ubuntu 20 beizubringen.04. Dafür haben wir zunächst die Notwendigkeit hervorgehoben, die dynamisch zugewiesenen Arrays in C zu verwenden++. Dann haben wir Sie durch ein detailliertes Beispiel geführt, in dem es erklärte, wie Sie dynamische Arrays in C erstellen und mit ihnen umgehen können++. Darüber hinaus haben wir auch die Methode geteilt, die dynamischen Arrays zu behandeln. Nach diesem Leitfaden erhalten Sie sicherlich ein grundlegendes Verständnis für den Umgang mit dynamischen Arrays in C++.