zurück weiter

C++

G.Eichelsdörfer - Staatliche Technikerschule Weilburg

Viertes Programm - Namen und Initialen

Mit dem hier angestrebten Programm sollen Sie die Verwendung von string-Objekten üben.

Aufgabe

Erstellen Sie ein Programm, welches sowohl Vor- als auch Nachname des Benutzers einliest. Vor- und Nachname sollen dann in einem einzigen string-Objekt "Name" durch Leerzeichen getrennt gespeichert werden.

Das Programm soll vor den Eingaben folgendes ausgeben:
Stelle dich bitte vor!
Dein Nachname: Geiger
Dein Vorname: Alfons
Geiger und Alfons sind beispielhafte Eingaben des Benutzers.

Das Programm soll auch die Initialen (Anfangsbuchstaben beider Namen) erfassen und etwa wie folgt ausgeben:
Hallo Alfons Geiger.
Deine Initialen sind AG.

Die Ausgabe beider Namen soll mit Hilfe des Objektes "Name" erfolgen. Die Initialen sollen einer Variablen "Initialen" zugewiesen und danach ausgegeben werden. Das Projekt soll im Arbeitsbereich "Anfang" liegen und den Namen "initialen" tragen.

Hinweise und Informationen

  1. In diesem Programm sind mehr als ein string-Objekt anzulegen. Statt jedes dieser Objekte in jeweils einer Zeile zu definieren, können die einzelnen Objekte auch kürzer in einer Liste aufgeführt werden. Dies gilt generell für Variable (Objekte) desselben Typs (Klasse).

    Beispiel:
    std::string Vorname;
    std::string Nachname;
    kann kürzer geschrieben werden mit
    std::string Vorname, Nachname;

  2. Auf den string-Objekten sind einige hilfreiche Operatoren definiert.

    1. Verkettungsoperator +
      Damit können Strings aneinander gehängt werden.
      Beispiel:
      string s1, s2, s;
      cin >> s1 >> s2; // Einlesen
      s = s1 + ' ' + s2; // s erhält den s1-Inhalt, Leerzeichen, s2-Inhalt
      Einzelne Zeichen werden in Hochkomma (Apostroph, single quotes) gesetzt, Zeichenketten in Anführungszeichen (double quotes). Der Verkettungsoperator arbeitet auch mit einzelnen Zeichen statt mit Strings.

    2. Anfügeoperator +=
      Dieser wirkt wie eine Verkettung (s.o.) und eine Zuweisung.
      Beispiel:
      s += s2; wirkt wie s = s + s2;
      Der Operator += sollte jedoch effizienter arbeiten, weil weniger Kopiervorgänge erforderlich sind. Möglicherweise kann ein Compiler die untere Anweisung in die obere optimieren.
      Auch dieser Operator kann an ein string-Objekt ein einzelnes Zeichen anfügen.

    3. Indexoperator []
      Dieser Operator dient bei string-Objekten dazu, auf einzelne Zeichen zuzugreifen. Der in den eckigen Klammern eingeschlossene Index gibt die Stelle des Zeichens im String an. Dabei besitzt das erste Zeichen immer den Index 0.
      Beispiel:
      cout << "Das erste Zeichen in s ist " << s[0];
      Wenn auf eine Stelle in einem string-Objekt zugegriffen werden soll, dann ist darauf zu achten, dass diese Stelle auch existiert. Ein string-Objekt ist im Standardfall zu Anfang leer, beinhaltet also kein Zeichen - auch nicht an der Stelle 0.