Grundlagen der String-Funktionen für C-Programmierung

Trotz seiner nicht variablen Typklassifizierung, wird der C-Programmierbibliothek nicht auf Funktionen knausern, die Strings manipulieren. alles, was Sie gerade über Wunsch mit einer Schnur zu tun, kann mit einigen der vielen String-Funktionen durchgeführt werden. Und wenn diese Funktionen zu kurz, können Sie Ihre eigenen schreiben.

Menu

Einführung in die String-Funktionen

Hier sind einige der Sprache C Bibliotheksfunktionen, die zu manipulieren oder Missbrauch Strings:

FunktionWas es macht
strcmp ()Vergleicht zwei Strings in Groß- und Kleinschreibung. Wenn die stringsmatch, gibt die Funktion 0 zurück.
strncmp ()Vergleicht die ersten n Zeichen zweier Strings, Rückkehr 0 ifthe bestimmte Anzahl von Zeichen übereinstimmen.
strcasecmp ()Vergleicht zwei Strings und ignoriert Groß- und Kleinschreibung. Wenn die stringsmatch, gibt die Funktion 0 zurück.
strncasecmp ()Vergleicht eine bestimmte Anzahl von Zeichen zwischen zwei Strings und ignoriert Groß- und Kleinschreibung. Wenn die Anzahl der Zeichen übereinstimmen, gibt TheFunction 0.
strcat ()Hängt einen String an einen anderen, einen einzelnen String zu schaffen oftwo aus.
strncat ()Hängt eine bestimmte Anzahl von Zeichen aus einer Zeichenfolge zu dem anderen endof.
strchr ()Suchen nach einem Zeichen in einer Zeichenkette. Die Funktion returnsthat Charakters Position von Anfang des Strings als APointer.
strrchr ()Sucht nach einem Zeichen innerhalb eines Strings, aber in umgekehrter Richtung. TheFunction gibt die Position des Charakters aus dem Ende des thestring als Zeiger.
strstr ()Sucht nach einer Zeichenfolge innerhalb einer anderen Zeichenfolge. Die functionreturns ein Zeiger auf die Position des String, wenn it'sfound.
strnstr ()Sucht nach einer Zeichenfolge innerhalb der ersten n Zeichen des zweiten String. Die Funktion gibt einen Zeiger auf den string'slocation wenn es gefunden.
strcpy ()Kopien (Duplikate) eine Saite zum anderen.
strncpy ()Kopiert eine bestimmte Anzahl von Zeichen aus einer Zeichenfolge toanother.
strlen ()Gibt die Länge einer Zeichenkette, die nicht 0 oder NULLcharacter am Ende der Zeichenkette zu zählen.

Mehr String-Funktionen zur Verfügung. Viele von ihnen tun bestimmte Dinge, die ein tieferes Verständnis von C. erfordern Die gezeigten diejenigen sind die häufigsten.

Alle diese String-Funktionen erfordern die string.h-Headerdatei mit Ihrem Quellcode enthalten sein:

#einschließen 

Auf einem Unix-System können Sie alle String-Funktionen, indem Sie den Befehl, Mann Zeichenfolge in einem Terminal-Fenster.

Text von String-Funktionen

Strings werden verglichen, indem die Funktion strcmp () verwenden und alle seine Verwandten: strncmp (), strcasecmp () und strncasecmp ().

Die String-Vergleichsfunktionen geben einen Wert int auf dem Ergebnis des Vergleichs basiert: 0 für, wenn die Strings gleich sind, oder einen höheren oder niedrigeren int-Wert je nachdem, ob der erste String Wert größer ist als (höher im Alphabet) oder weniger als (untere im Alphabet) der zweiten Saite. Die meiste Zeit, überprüfen Sie nur für 0.

Lassen Sie mich die Funktion strcmp () in Zeile 13 In verwendet die Zeichenfolge initialisiert Passwort zu vergleichen mit dem, was Text in Zeile 11 gelesen wird, die in dem Eingabefeld gespeichert wird. Das Ergebnis dieser Operation wird in den gespeicherten Spiel Variable, die in einer if-else Entscheidungsbaum bei Zeile 14 zur Anzeige der Ergebnisse verwendet wird.

LASS MICH REIN

# include # include int main () {char Passwort [] = "Taco" -char Eingang [15] -int Match-printf ( "Passwort:") -scanf ( "% s", input) -match = strcmp (Eingang , Passwort) -wenn (Match == 0) puts ( "Passwort akzeptiert") - ". Ungültige Passwort mit den Behörden alarmieren." elseputs () - return (0) -}

Übung 1: Geben Sie den Quellcode von Let Me in Ihren Editor In. Versuchen Sie das Programm ein paar Mal, um sicherzustellen, dass es nur Taco als das eigentliche Passwort akzeptiert.

Übung 2: beseitigen Sie die Spiel Variable aus dem Code in Übung 13-7 und verwenden Sie die Funktion strcmp () direkt in der if-Vergleich. Das ist die Art und Weise die meisten Programmierer es tun.

Übung 3: Ratsche nach unten Sicherheit eine Kerbe durch Ersetzen der Funktion strcmp () mit strcasecmp (). Führen Sie das Programm, um zu bestätigen, dass sowohl Taco und TACO sind als Passwort akzeptiert.

Wie baut man Strings

Der Klebstoff, der eine Saite auf das Ende eines anderen Sticks ist die strcat () Funktion. Der Begriff Katze ist die Abkürzung für verketten, was bedeutet, miteinander zu verknüpfen. So funktioniert das:

strcat (erste, zweite) -

Nachdem diese Anweisung ausführt, wird der Text aus dem zweiten String an die erste Zeichenkette angehängt. Oder können Sie sofort Werte verwenden:

strcat (Gerundium, "ing") -

Diese Aussage heftet den Text an das Ende des Textes Array gerund ing.

Der Code in Einführungen deklariert zwei char-Arrays Text halten. Array erste doppelt so groß ist als Array zuletzt, weil es der Ort ist, wo die zweite Zeichenfolge Inhalt kopiert wird. Das Kopieren erfolgt in Zeile 13 mit der strcat () Funktion.

INTRODUCTIONS

# include # include int main () {char erste [40] -char letzten [20] -printf ( "Was ist Ihr erster Name?") -scanf ( "% s", zuerst) -printf ( "Was ist Ihre letzte Name ") -scanf ("% s ", last) -strcat (first, last) -printf (" Freut mich, Sie zu treffen,% s n ", zuerst) -return (0) -?!}

Übung 4: Erstellen Sie ein neues Programm, indem Sie den Quellcode von Einführungen verwenden. Führen Sie das Programm. Geben Sie Ihren Vor- und Nachnamen, und dann tun Übung 5.

Übung 5: Ändern Sie den Quellcode, so dass ein einziger Raum mit dem ersten Zeichenfolge verkettet wird, bevor die letzte Saite verketteten ist.

Menü