Ein String kann durch den Zuordnungsoperator „=“ einer String-Variablen zugeordnet werden. Die assign()-Funktion der <string> Bibliothek erledigt diese Aufgabe ebenfalls perfekt. Der String und damit der Inhalt der Variable wird kopiert und der Funktion als Argument in den Klammern übergeben.
Optional gibt Ihnen die assign()-Funktion auch eine Möglichkeit an die Hand, einen Teilstring ab einer bestimmten Position zu kopieren, die durch ein zweites Argument in der Klammer festgelegt ist. Für die Anzahl der zu kopierenden Zeichen wird ein drittes Argument verwendet.
Der Inhalt einer String-Variablen kann in C++ außerdem an eine zweite Variable durch die Funktion swap() übertragen werden. In diesem Fall erhält die erste Variable den Inhalt der zweiten. Auch diese nützliche Funktion ist Teil der <string> Bibliothek.
Das folgende Programm zeigt die Ergebnisse der Funktionen swap() und assign().
Übung: Zeichenketten kopieren und austauschen
Programm: tausch.cpp
#include <string> #include <iostream> using namespace std; int main() { string vorn; string hinten; string text = "Lachen ist die beste Medizin"; //Der Variablen vorn den Inhalt von text zuweisen vorn.assign(text); //Anzeigen von text cout << endl << "Vorn: " << vorn << endl; //Ausgabe der ersten 21 Zeichen von text vorn.assign(text, 0, 6); cout << endl << "Vorn: " << vorn <<endl; //Nur der letzte Teil wird ausgegeben hinten.assign(text, 21, text.size()); cout << "Hinten: " << hinten << endl; //Werte tauschen hinten.swap(vorn); cout << endl << "Vorn (getauscht): " << vorn << end cout << "Hinten (getauscht): " << hinten << endl; system("pause"); return 0; }
Kompilieren Sie nach dem Speichern das Programm und schauen Sie sich das Ergebnis an.
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