Unsere Datenschutzrichtlinie wird in Kürze aktualisiert. Bitte sehen Sie sich die Vorschau an.

C Grundkurs

Strings im Detail

Testen Sie unsere 2016 Kurse

10 Tage kostenlos!

Jetzt testen Alle Abonnements anzeigen
Dieses Video vertieft das Verständnis von Strings in C und bietet einen ersten Einblick in die String-Verarbeitung mit den Funktionen der Bibliothek "string.h".
06:33

Transkript

In diesem Video wollen wir noch einen etwas genaueren Blick auf Strings werfen. Denn Strings sind in C Arrays mit Charaktern, also mit einzelnen Zeichen. Und dem entsprechend deklarieren Sie einen String hier auch mit Array-Notationen. Strings werden hier vom Literal her in Doppelhochkomma eingeschlossen. Und wenn Sie hier keine Größe festlegen, dann legt die Länge von dem String die Größe des Character-Arrays fest. Sie sehen hier die Ausgabe von diesem String. Dabei nutze ich aus, dass ich hier direkt dieses Character-Array mit PRINTF ausgeben kann. Ich kann natürlich auch hier diese flexiblere Schreibweise nutzen und dann muss ich hier % S reinschreiben als Platzhalter für dieses Character-Array. Nun ist es natürlich spannend, dass das hier ein Array ist. Und das bedeutet, Sie können nämlich mit der klassischen Vorgehensweise in einem Array auch an die einzelnen Zeichen in dem String kommen. Sie können mit einer Schleife drüber laufen, Sie können Indizes benutzen und und was man so bei Arrays alles machen kann. Nun hatte ich Eingangs bereits hier hier eine Größe... ...für das Character-Array festgelegt. Und offensichtlich ist dieser Text "Hello World" bedeutet kleiner, als der potenziell zur Verfügung stehende Platz in dem Character-Array. Nun weiß der Compiler nicht, wo der echte Inhalt, quasi, von diesem Character-Array zu Ende ist. Im Grunde sind da nur Zeichen drin und ein W und ein potenziell weiter hinten befindliches Zeichen gleichwertiger Art, sind für den Compiler uninteressant. Man wird also in C festlegen, oder man sollte, man muss manchmal festlegen, dass hier nach diesem Literal, nach dem letzten Zeichen, dieser String zu Ende ist. Dieses Ende-Zeichen sollte man bei der Deklaration von String-Feldern immer setzten. Dabei wird dann allerdings auch ein weiteres Zeichen in dem String benötigt. Das heißt: "Hello World" und "Hello World"/0 unterschieden sich in der Länge. Und wenn man hier eine gewisse Länge festlegt, dann muss man dieses Ende-Zeichen mit reservieren. Am einfachsten geht das natürlich immer, wenn man die Länge dynamisch durch die Zuweisung sich ergeben lässt. Lassen Sie sich nicht täuschen, wenn Sie in der Ausgabe jetzt keinen Unterschied zu vorher sehen. Ich habe in der Tat hier einen Byte mehr notwendig. Diese 0-Terminierung ist bei vielen Fällen eine sehr sinnvolle, eine notwendige Sache bei Strings in C. Nun gibt es für die String-Verarbeitung in C eine ganz spannende Bibliothek, die heißt string.h. Das ist eine Header-Datei. Das heißt, wenn man hier... (schreibt auf Tastatur) ...diese Bibliothek einbindet, dann stehen die unterschiedlichsten Funktionen zur Verfügung, beispielsweise um die Länge eines Strings zu bestimmen. Da gibt es eine Funktion strlen - String Length. Oder eine Funktion zum Kopieren von Strings. strcpy. Wobei... das o hier weg gelassen wird. Findet man sehr oft. Die Vokale werden einfach weg gelassen. Sie sehen, dass es hier auch schon in der Vorschlagsliste eine ganze Reihe von weiteren Funktionen gibt, die mir für die String-Verarbeitung vorgeschlagen werden. Oder es gibt die Funktion strcat - String CAT. Damit verbindet man Strings. Man hängt sie aneinander. Oder mit... stringcmp - String Compare - kann man Strings vergleichen. Hier sehen Sie auch so ein I, was dahinten auftaucht. Diese Funktion ist fast gleich. Aber wenn Sie so ein I finden dann steht das bei String-Funktionen meistens, oder eigentlich immer für IGNORE CASE. Das bedeutet, da würde Groß- und Kleinschreibung nicht berücksichtigt. Auch bei anderen String-Funktionen finden Sie ab und zu zwei verwandte Funktionen - eine mit und eine ohne I. Und wenn ein I auftaucht, steht das dann für IGNORE CASE. Groß- und Kleinschreibung eben nicht beachten. Auch ganz interessant ist diese Funktion strstr - String String. Die sucht nach Strings in einem String. Sie haben einen kleinen Such-String, ein bestimmtes Zeichen vielleicht sogar nur und das suchen Sie in einen großen String. Wenn das gefunden wird, dann wir die Position von diesem Zeichen als Ergebnis geliefert. Sie haben also gesehen, dass es in C in dieser Bibliothek zur String-Verarbeitung zahlreiche Funktionen gibt, um den Umgang mit Strings zu erleichtern. Bitte achten Sie auch immer darauf, dass Sie gegebenenfalls einen String mit einem Ende-Zeichen versehen, um nicht in unglücklichen Situationen über das Ende von diesem Character-Array hinaus zu schreiben und aber auch deutlich dem Compiler zu sagen, hier ist der String zu Ende. Und darüber hinaus sind nur Füll-Zeichen, oder so etwas.

C Grundkurs

Lernen Sie das Syntaxkonzept von C von Grund auf kennen vor und sehen Sie, wie mit einer geeigneten Entwicklungsumgebung Programme Schritt für Schritt entstehen.

4 Std. 36 min (70 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!