Am 14. September 2017 haben wir eine überarbeitete Fassung unserer Datenschutzrichtlinie veröffentlicht. Wenn Sie video2brain.com weiterhin nutzen, erklären Sie sich mit diesem überarbeiteten Dokument einverstanden. Bitte lesen Sie es deshalb sorgfältig durch.

C++ Grundkurs

C-Strings

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
C-Strings stellen in C++ Zeichen-Arrays dar, welche mit einem Nullzeichen abgeschlossen werden.
02:49

Transkript

In dieser Lektion möchte ich Ihnen C-Strings vorstellen. Ich möchte Ihnen insbesondere auch C-String-Literale vorstellen und noch ein paar Tipps geben zum Gebrauch von C-Strings. C-Strings sind Zeichenarrays, die mit einem 0-Zeichen \0 abgeschlossen werden. D. h., in dem C-String muss Platz für ein Extrazeichen, eben das Endzeichen vorgesehen sein. C-Strings sind Zeichenarrays über Zeichen. Die Zeichen können char, wchar_t, char16_t oder char32_t sein. char ist der Standardzeichentyp. wchar_t sind eben die wide chars, die in der Regel 2 oder 4 Byte groß sind und char16_t und char32_t sind Zeichen, die 16 bzw. 32 Bit groß sind und die sind gedacht für UTF-16 und UTF-32 Zeichen bzw. UTF-16 und UTF-32- C-Strings. Wir kommen schon zum nächsten Punkt, zu den String-Literalen. Diese werden durch doppelte Anführungszeichen definiert und sie können sich über mehrere Zeilen erstrecken. Ein Beispiel habe ich hier, char simple. Dieses String-Literal erstreckt sich über zwei Zeilen. Dann habe ich hier noch einen String-Literal zu wchar_t, zu char16_t und char32_t. Wie gesagt, dies ist für UTF-16 und dieses hier ist für UTF-32 Strings. Das wchar_t String-Literal wird durch das große L zum wchar_t Literal. Das char16_t Literal wird durch das kleine u zum char16_t Literal und das gleiche gilt auch für das char32_t Literal, das eben durch das große U zum UTF-32 String wird. Die Nachteile von C-Strings, sie besitzen ein eingeschränktes Interface. D. h., Sie können im Wesentlichen mit C-Funktionen darauf losgehen. Sie sind aber nicht kompatibel mit Algorithmen der Standard Template Library. Das halte ich für einen weiteren großen Nachteil. Aus dem Grund sind sie sehr, sehr fehleranfällig. Sie verwalten nicht automatisch ihren Speicher. Ich gehe soweit zu behaupten, dass mindestens jeder dritte C++ Fehler, wenn man C-Strings verwendet, auf C-Strings zurückgeht. Aber - und das ist der große Nachteil - sie werden noch häufig im bestehenden Code verwendet. Von daher müssen Sie natürlich wissen, wie Sie damit umgehen. Wenn Sie die Möglichkeit haben, verwenden Sie std::string. Der verwaltet automatisch seine Zeiger, ist kompatibel mit Algorithmen der Standard Template Library und besitzt ein weit mächtigeres Interface. In dieser Lektion habe ich Ihnen den C-String vorgestellt. Insbesondere habe ich Ihnen vorgestellt, dass ein C-String über verschiedene Zeichentypen definiert werden kann. Die Zeichentypen sind char, wchar_t, UTF-16 Zeichen und UTF-32 Zeichen. In diesem Fall heißen sie char16_t und char32_t. Zum Schluss habe ich Ihnen noch ein paar Tipps gegeben. Diese Tipps lassen sich auf den einfachen Grundsatz reduzieren, verwenden Sie im Zweifelsfall std::string.

C++ Grundkurs

Steigen Sie in die mächtige Programmiersprache C++ ein und lernen Sie dabei alle wichtigen Funktionen mit Anwendungsbeispielen kennen.

8 Std. 14 min (147 Videos)
Derzeit sind keine Feedbacks vorhanden...
 

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!