Was ist ein Const -Zeiger in C++?

Was ist ein Const -Zeiger in C++?
Das Wort "const" i.e., Konstant bedeutet „keine Änderung“ für einen variablen Wert innerhalb der Programmiersprachen. Der Zeiger in der Programmierung bezieht sich auf eine Variable, die auf eine bestimmte Adresse hinweist, wahrscheinlich auf eine variable Adresse. Der konstante Zeiger wird einer sein, der immer in Richtung derselben Adresse zeigt. Dies bedeutet, dass die Adresse einer Variablen, auf die der Zeiger zeigt, bisher nicht aktualisiert werden kann. Daher werden wir in diesem Artikel sehen, was ein konstanter Zeiger in C ++ ist und wie er funktioniert. Lassen Sie uns einen guten Start haben.

Beispiel 01: Zeiger

Lassen Sie uns unser erstes Beispiel haben, um zu demonstrieren, wie ein konstanter Zeiger in der Terminalschale funktioniert. Beginnen Sie mit der Öffnung der Shell Console -Anwendung in Ihrer Linux -Verteilung. Sie können die Verknüpfung „Strg+Alt+T“ bei Ubuntu 20 verwenden.04 Desktop dazu. Lassen Sie uns gleich nach dem Öffnen der Shell eine neue C ++ - Datei erstellen. Die Abfrage „Touch“ wird hier bisher verwendet. Erwähnen Sie den Namen einer Datei in der Anweisung "Berührung", die Sie mit der “erstellen möchten.CC ”Erweiterung.

Nach dem Erstellen einer Datei können Sie Ihre Datei problemlos aus dem Home -Ordner Ihres Linux -Systems öffnen. Um es in der Shell zu bearbeiten und zu aktualisieren, müssen Sie einige Editor -Module verwenden. Wenn Sie keinen haben, versuchen Sie, den Editor "GNU Nano" oder den VIM -Editor "zu installieren. Wie im folgenden beigefügten Bild gezeigt, haben wir den Editor „Nano“ verwendet, um die neu gemachte „const“ zu öffnen.CC ”Befehl in der Shell.

$ touch const.CC
$ nano const.CC

Die Datei wird im GNU Nano Editor leer geöffnet. In unserem ersten Beispiel werden wir zunächst die Arbeit einer einfachen Zeigervariablen sehen, um konstante Zeiger mehr zu verstehen. Fügen Sie also die erforderlichen Bibliotheken hinzu, ich.e., Standard-Stream-Header und STDIO-Header für Eingabe-Output-Streams, indem Sie das Schlüsselwort "integrieren" mit einem Hash-Zeichen zu Beginn verwenden. Sie müssen den Standard -Namespace mit dem Wort "Verwenden" definieren. Danach wird die Main () -Methode initiiert, da wir alle darin arbeiten müssen. Darüber hinaus beginnen Zusammenstellung und Ausführung von hier aus. Initialisieren Sie eine Ganzzahlvariable "A" mit einem ihm zugewiesenen Ganzzahlwert, ich.e., 98.

Der "Cout" -Stream wird verwendet, um den Wert der Variablen "A" anzuzeigen. Danach wurde ein Zeiger „PTR“ vom Typ Ganzzahl initialisiert, der auf die Adresse der Ganzzahlvariablen „A“ hinweist. Aufgrund dieses Zeigers können wir die Variable „A“ ändern, da beide momentan nicht konstant sind. Danach wurde der Zeiger „PTR“ angezeigt, ich.e., Adresse der Variablen "a". In der nächsten Zeile haben wir den Inkrementoperator verwendet, um den Wert des Zeigers „PTR“ -Adresswert zu erhöhen, da er auf die Adresse der Variablen „A“ hinweist.

Der Zeiger „PTR“ wurde erneut mit Hilfe des "Cout" -Streams angezeigt. Der nächste "Cout" -Stream wird verwendet, um den Variablen -A -Wert erneut anzuzeigen, ich.e., inkrementiert. Der Code endet hier. Speichern Sie den neu erstellten Code und lassen Sie den GNU -Nano -Editor mit dem "Strg+S" und "Strg+x" von der Tastatur aus.

Lassen Sie uns zuerst diesen neu hergestellten C ++ - Code kompilieren. Verwenden Sie den Compiler "G ++" dafür. Wenn Sie noch keine in Ihrem System installiert haben, versuchen Sie es zuerst zu konfigurieren. Nachdem die Kompilierung erfolgreich geworden ist, lassen Sie Ihren Code mit dem „Ausführen“ ausführen./A.OUT ”Befehl. Sie werden sehen, wie die erste "Cout" -Anweisung ausgeführt wurde, wird der Wert einer Variablen "A" i i angezeigt.e., 98.

Bei der Ausführung eines zweiten und dritten "Cout" -Streams zeigte er dieselbe Adresse, die im Zeiger „PTR“ gespeichert war, der auf die Variable „A“ hinweist. Das Inkrement wurde über den Wert einer Variablen „A“ durch Zeiger „PTR“ ausgeführt. Somit wurde bei der Ausführung einer 4. „Cout“ -Anweisung der Inkrementwert einer Variablen „A“ auf dem Terminalbildschirm angezeigt.

$ g ++ const.CC
$ ./A.aus

Beispiel 02: konstantes Zeiger auf Ganzzahl

Hier ging es um den einfachen Zeiger, der auf eine variable Adresse hinweist. Schauen wir uns nun das Beispiel an, einen konstanten Zeiger zu verwenden, um auf eine Variable hinweisen. Wie wir wissen, bedeutet das Wort konstant „keine Änderung“, wenn es auf eine Variable angewendet wird. Wir werden es also als Zeigervariable verwenden, um zu sehen, wie sich ein konstanter Zeiger in bestimmten Situationen verhalten wird. So haben wir dieselbe Datei mit dem Editor „GNU Nano“ eröffnet und seinen Code ein wenig aktualisiert.

Die Initialisierungszeile eines Zeigers wurde mit dem Wort "const" zusammen mit dem "*" -Schild zu Beginn aktualisiert. Stellen Sie sicher, dass Sie es nach dem Datentyp „int“ innerhalb der Initialisierung eines Zeigers „CPTR“ verwenden. Dann haben wir die Anweisung "Cout" verwendet, um den Wert der Variablen "A" zu erhöhen, da der Zeiger "CPTR" darauf zeigt. Die nächste Cout -Anweisung wurde initialisiert, um den Zeiger „CPTR“ selbst zu erhöhen. Dies verursacht den Kompilierungsfehler, da der „CPTR“ selbst konstant ist. Der Rest des Codes bleibt unverändert und gespeichert mit dem "Strg+S".

Wenn wir den Code der Const kompiliert haben.CC -Datei gibt es uns den Fehler in Zeile 10. Da der Zeiger konstant war, besagt der Fehler, dass das „CPTR“ nur schreibgeschützt ist und nicht wie erwartet inkrementiert werden kann.

$ g ++ const.CC

Wenn wir den Code kompiliert haben, wurde die Variable „A“ mit seinem ursprünglichen und aktualisierten Wert angezeigt. Während die Adresse des Zeigers „CPTR“ gleich war und nicht modifiziert wurde.

$ ./A.aus

Beispiel 03: konstantes Zeiger auf konstante Ganzzahl

In diesem Beispiel werden wir sowohl Zeiger als auch Ganzzahl als konstant angeben. Dies bedeutet, dass beide nicht aktualisiert werden können. Öffnen Sie also dieselbe Datei, um den Auflös zu machen. Wir haben einen konstanten Typ Ganzzahl „B“ mit einem Wert von 13 initialisiert. Diese Variable wurde über die Anweisung "Cout" angezeigt. Dann haben wir einen Zeiger „CPTRC“ mit konstantem Typ initialisiert, der auf die konstante Variable „B“ mit dem „&“ -Scheichen hinweist. Die Cout -Klausel wird verwendet, um den Zeiger "CPTRC" anzuzeigen. Danach wird der Wert der konstanten Variablen „B“ durch die konstante Variable „CPTRC“ erhöht.

In der nächsten Folge wurde der Zeiger „CPTRC“ selbst erhöht. Beide Inkrementzeilen zeigen den Fehler bei der Kompilierung an. Die letzten beiden Cout -Anweisungen werden verwendet.

Nachdem wir den Code kompiliert haben, haben wir einen Fehler in beiden Inkrementzeilen, ich.e., 9 und 10.

$ g ++ const.CC

So nach der Ausführung des Code mit Hilfe eines “./A.Out “Anweisung, wir haben das alte Ergebnis des letzten Beispiels und der Code wurde nicht ausgeführt.

$ ./A.aus

Abschluss:

Schließlich haben wir die Arbeit von konstanten Variablen in C durchgeführt++. Wir haben die Beispiele für einfache Zeiger, ständige Zeiger auf Ganzzahlen und ständige Zeiger auf ständige Ganzzahlen erörtert, um das Verständnisstufe für Zeiger zu verbessern. Wir haben die Anweisung „Cout“, Inkrementbetreiber und & Operatoren verwendet, um dieses Ziel zu erreichen. Wir hoffen.04 System.