5.8.1) Grundgerüst eines Programms

Ein Programm ist eine Aneinanderreihung von Befehlen, die dem Computer zur Abarbeitung zugeführt werden können. Wie schon erwähnt, wird ein C++-Programm in einem Texteditor geschrieben und dann von einem Compiler in ausführbaren Code übersetzt. Danach kann es gestartet werden.

Hauptprogramm - main()

Ein C++-Programm besteht mindestens aus der Funktion main(). Wichtig ist, dass Sie in jedem C++-Programm irgendwo den Namen main mit einem Klammerpaar finden werden. In manchen Fällen stehen zwischen den Klammern Variablen für die Parameterübergabe. Aber auch das sollte Sie zu Anfang nicht stören. Ignorieren Sie es von ganzem Herzen, bis Sie wissen, wozu Sie es brauchen.
Die Hauptfunktion beginnt direkt nach einer öffnenden geschweiften Klammer und endet mit der schließenden Klammer. Zwischen den geschweiften Klammern stehen die Befehle der Hauptfunktion. Sie werden nacheinander ausgeführt. Diese Hauptfunktion enthält nichts und ist damit das kleinste denkbare C++ Programm.

int main()   //Hauptfunktion main()
{
 
   return 0;  //Optionale Rückgabe an das Betriebssystem
}

Dieses Programm tut gar nichts. Wenn es etwas täte, stünden die Befehle zwischen den geschweiften Klammern.

Kommentare

Wenn wir schon einmal ein Programm haben, das nichts tut, wollen wir es auch um Befehle erweitern, die nichts tun: KOMMENTARE.

Freundlichkeit unter KollegInnen

Sie können in das Programm Kommentare einfügen, die vom Compiler völlig ignoriert werden. Der Zweck solcher Kommentare ist es zu dokumentieren, warum das Programm so und nicht anders geschrieben wurde. Die Kommentare richten sich an Programmierer. Dies können Kollegen sein, die Ihr Programm korrigieren oder erweitern sollen. Aber noch öfter helfen Sie sich selbst damit. In der Praxis ist es so, dass Sie vermutlich auch herangezogen werden, wenn eines Ihrer Programme nicht korrekt läuft oder ergänzt werden soll. Da Sie zwischendurch andere Programme geschrieben haben werden, vielleicht geheiratet haben, umgezogen sind und noch drei weitere Programmiersprachen gelernt haben, werden Sie sich nicht mehr an jedes Detail erinnern. Sie werden dankbar sein, wenn Sie in den Programmen ausführliche Hinweise finden, wie und warum es so funktioniert oder zumindest funktionieren soll.

Es gibt zwei Arten, einen Text davor zu schützen, dass der Compiler versucht, ihn als Programm zu interpretieren.

Zeilenweise

Die einfachere Art der Kommentierung ist es, zwei Schrägstriche direkt hintereinander zu setzen. Damit gilt der Rest der Zeile als Kommentar.

int main()
{
    // Hier beginnt der Kommentar.
    // Die naechste Zeile braucht ihr
    // eigenes Kommentarzeichen.
 
    return 0;
}

Kommentarblock

Daneben gibt es die Möglichkeit, einen größeren Text in Kommentarklammern einzuschließen und damit dem Compiler zu entziehen. Der Anfang des Kommentars wird durch den Schrägstrich, gefolgt von einem Stern, festgelegt. Der Kommentar endet mit der umgekehrten Zeichenfolge, also mit einem Stern und dann einem Schrägstrich.

int main()
{
  /* Hier beginnt der Kommentar.
     Die naechste Zeile braucht kein
     eigenes Kommentarzeichen.
   */
 
   return 0;
}

!! ACHTUNG !! : Eine Verschachtelung von Kommentarblöcken ist nicht möglich!

int main()
{
  /* Hier beginnt der Kommentar
     /*
       Die naechste Zeile braucht kein
       eigenes Kommentarzeichen
      */
     Dies wird der Compiler wieder uebersetzen wollen.
  */
 
  return 0;
}

Anweisungen

Anweisungen sind die Befehle, aus denen ein Programm besteht. Eine Anweisung kann dazu dienen, etwas zu speichern, zu berechnen, zu definieren oder auf dem Bildschirm auszugeben. Anweisungen sind die Grundeinheiten, aus denen Programme bestehen.

Blöcke

Zusammenfassen von Anweisungen

Mehrere Anweisungen können zu einem Block zusammengefasst werden. Ein Block wird durch geschweifte Klammern eingefasst. Der Compiler wird einen Block wie eine einzige Anweisung behandeln. Sicher ist Ihnen schon aufgefallen, dass die Hauptfunktion main() ebenfalls solche geschweiften Klammern hat. In der Tat ist dies der Block, in dem die Befehle des Programms zusammengefasst werden.

Einrückungen

Um die Übersicht zu erhöhen, pflegt man alle Befehle innerhalb eines Blocks einzurücken. Achten Sie vor allem am Anfang darauf, dass die zusammengehörigen geschweiften Klammern auf einer Ebene stehen. Das folgende Beispiel mit Pseudobefehlen zeigt, wie das Einrücken korrekt ist.

int main()
{
    Hier sind Pseudo-Anweisungen;
    Diese gehört dazu;
    {
        Neuer Block, also einrücken;
        Wir bleiben auf diesem Niveau;
        Das kann ewig weitergehen;
    }
    Nun ist die Klammer geschlossen;
    Und die Einrückung ist auch zurück;
 
    return 0;
}

Hello World!

Es ist eine alte Tradition, eine neue Programmiersprache mit einem „Hello-World“-Programm einzuweihen. Auch dieses Buch soll mit der Tradition nicht brechen, hier ist das „Hello-World“-Programm in C++:

#include <iostream>                                     // Ein- und Ausgabebibliothek
 
int main(){                                             // Hauptfunktion
    std::cout << "Hallo, du schöne Welt!" << std::endl; // Ausgabe
 
    return 0;                                           // Optionale Rückgabe an das Betriebssystem
}

Namensraum - namespace std

Die C++-Standardbibliotheken verwenden für alle Funktionen und Variablen den Namensraum std. Bei Verwendung von Typen, Funktionen oder Variablen aus den Standardbibliotheken müssten Sie jeweils std:: voranstellen. Sie können aber auch mit dem Befehl using erklären, dass Sie den Namensraum std verwenden wollen, als seien alle darin definierten Variablen und Funktionen ohne Namensraum definiert. Die Anweisung dazu lautet:

using namespace std;