Sonntag, 7. Juli 2024
19.4 C
Berlin

Der Aufbau eines C++ Programms

Richtig geschriebene C++ Programme haben eine besondere Struktur. Nur wenn die Syntax korrekt ist, kann der Compiler den Quellcode übersetzen und ein ausführbares Programm erzeugen. Anhand von Beispielprogrammen lernen Sie in diesem Workshop die grundlegenden Elemente dieser Programmiersprache kennen. Während andere Sprachen oft eine unterschiedliche Syntax verwenden, sind große Teile der vorgestellten C++ Programme auch in C, C# oder Java lauffähig.

 

Anatomie eines C++ Programms

Elemente eines C++ Programms.
Elemente eines C++ Programms.

Das in Kapitel 1 und 2 vorgestellt Programm macht nichts anderes als den Text „Hallo Welt!“ auf den Bildschirm zu schreiben. Dennoch enthält dieser kleine Quellcode bereits einige wichtige Elemente eines C++ Programms. Werfen wir noch einmal einen Blick auf das Fenster mit unserem Programm. Vereinfacht gesagt lässt dieser sich in zwei Teile unterteilen: in die Anweisungen für den Präprozessor und in das eigentliche Hauptprogramm.

 

Praxistipp: Leere Zeilen im Quellcode haben keinen Einfluss auf den Programmablauf und werden vom Compiler ignoriert.

[sc name=“adsense_InText_ad“]

#include <iostream>

Das Hash-Zeichen (dt. Nummernzeichen) # definiert diesen Programmteil als eine Präprozessor-Anweisung. Präprozessoren sind Computerprogramme, die zum Beispiel Daten entgegennehmen und sie an andere Programmteile weitergeben. Präprozessoren werden nur in C- und C++ Programmen verwendet, andere Sprachen kennen dieses Konzept nicht.

Um die Standardanweisungen nicht für jedes Programm erneut schreiben zu müssen, werden die Befehle in einer Bibliothek zusammengefasst die der Compiler kennt und an der aktuellen Stelle in das eigentliche Programm eingefügt. In unserem Beispielprogramm ist das „<iostream>“ weil dieser Präprozessor die Definition von „cout“ und „endl“ enthält. Mit anderen Worten: Der Compiler kann die Zeile 10 nur übersetzen, weil der Präprozessor die Definition liefert. Alle Standard-Präprozessoren werden durch spitze Klammern gekennzeichnet. Präprozessor-Anweisungen stehen sinnvollerweise am Anfang eines Quellcodes längere Programme enthalten meistens mehrere dieser Anweisungen. Im Gegensatz zu anderen Programmteilen werden sie nicht durch ein Semikolon abgeschlossen.

 

using namespace std;

Um auszuschließen, dass bei einem Programm, das aus mehreren Quelltexten besteht gleiche Namen verwendet werden, besteht die Möglichkeit, Variablen, Klassen, Deklarationen etc. unter einem Namensraum zusammenzufassen. Dafür wird das Schlüsselwort namespace verwendet. In der C++ Standardbibliothek sind alle Funktionen und Variablen unter dem Namensraum std zusammengefasst. Durch den Befehl using erklären Sie, dass der Namensraum std verwendet werden soll.

 

int main ( ) {

Dies ist der Beginn des eigentlichen Programms. Es beginnt mit der Deklaration einer Funktion mit dem Namen main. Jedes C++ Programm muss diese Funktion enthalten. Mehr über die Bedeutung von int erfahren Sie im Kapitel 3.2. Das Thema Funktionen wird im Kapitel 4 behandelt.

Die öffnende geschweifte Klammer markiert den Beginn der eigentlichen Funktion. Die Funktion enthält die auszuführenden Befehle. Das leere Klammerpaar ( ) besagt, dass die Funktion keine Parameter enthält.

 

cout <<“Hallo Welt!“<<endl;

Das Hauptprogramm oder die Funktion main ( ) enthält in unserem Beispiel nur zwei Befehle. Der erste Befehl benutzt er cout, ein Objekt der Bibliothek std, das den Text Hallo Welt! auf dem Bildschirm schreibt. Dabei wird der Ausgabeoperator << verwendet, der den Ausgabestream nach cout umleitet. Durch endl ist das Ende der Ausgabezeile gekennzeichnet. Operatoren lernen Sie weiter unten im Text noch genauer kennen.

Ein Befehl ist eine fundamentale Anweisung in einem Computer-Programm. Alle Befehle, auch wenn sie sich über mehrere Zeilen erstrecken, enden mit einem Semikolon „;“. Eine Liste der in einem C++ Programm reservierten Zeichen finden Sie am Ende dieses Abschnitts.

 

system(„Pause“);

Hier bedient sich das Programm einer Funktion des Betriebssystems und pausiert die Ausführung bis eine beliebige Taste gedrückt wird.

 

}

Die schließende geschweifte Klammer kennzeichnet das Ende der Funktion und gleichzeitig des Hauptprogramms. Die öffnenden und schließenden Klammern werden in jeder C++ Funktion benötigt.

 

Befehle in einem Block zusammenfassen

Mehrere Befehle lassen sich in einem C++ Programm zu einem Block zusammenfassen. Ein Block ist durch eine öffnende und eine schließende geschweifte Klammer gekennzeichnet. Auch das Hauptprogramm main ( ) besteht aus einem Block, in dem die Befehle des Programms zusammengefasst werden.

Um die Übersicht zu erhöhen werden die Befehle innerhalb eines Blocks eingerückt. Beim Schreiben sollten Sie darauf achten dass die zugehörigen Klammern auf einer Ebene stehen. Ein Beispiel:

main ( )
{
            Hier stehen die Anweisungen des ersten Blocks;
            Diese Zeile gehört dazu;
            {
                        Hier beginnt ein neuer Block;
                        Diese Zeile gehört dazu;
            }
}

In den meisten Fällen wird für die Einrückung eine Tabulator-Breite genommen. Dadurch ist der Code gut lesbar. Sie können aber auch eine kleinere Einrückung wählen, wenn der Code zu weit nach rechts herausragt.

Praxistipp: Befehle in einem C++ Programm werden immer mit einem Semikolon abgeschlossen. Die Anweisungen für den Präprozessor #inlcude sowie das Ende des Hauptprogramms benötigen kein Semikolon.
Symbole Bedeutung
; Ende eines Befehls
, Trennung der Elemente einer Liste
(  ) Arithmetische Klammern
{  } Beginn und Ende eines Blocks
[  ] Indexklammern bei Feldern
“  “ Anfang und Ende von Zeichenstrings
‘  ‘ Anfang und Ende von Einzelzeichen
/* … */ Mehrzeiliger Kommentar (Anfang und Ende)
// Kommentarzeile

Tabelle 3.1: In C++ reservierte Zeichen.

 

Der Rückgabewert

Jeder Funktion in einem C++ Programm gibt  einen Wert zurück, bei main ( ) ist das int (Integer-Wert). Dieser Variablentyp wird zur Speicherung ganzzahliger Werte verwendet. Der Wert wird in diesem Fall an das Betriebssystem zurückgegeben um zu signalisieren, dass eine Funktion normal beendet wurde und ein anderes Programm gestartet werden kann. Konventionell wird bei Erfolg der Wert 0 zurückgegeben, der Wert -1 kennzeichnet einen Fehler.

 

 

Dieser Artikel ist Teil unseres kostenlosen Workshops “C++ Programmieren lernen” – Geeignet für Einsteiger und Fortgeschrittene. Machen auch Sie mit und lernen Sie in 50 Artikeln, wie Sie Programme selbst schreiben!

 

 

Artikelbild: Fotolia / bramgino

 

PC-Reparatur.Shop - Team
PC-Reparatur.Shop - Team
Wenn Sie Fragen oder Anregungen zu diesem Beitrag haben, wenden Sie sich bitte direkt über die E-Mail Adresse blog@pc-reparatur.shop an unser Team - Vielen Dank!
Bewertung des Artikels: 1 Stern2 Sterne3 Sterne4 Sterne5 Sterne

IN EIGENER SACHE

Ähnliche Artikel