String: String ist eine Reihe von Zeichen. Ein paar Beispiele für Saiten sind:
"Neu -Delhi ist die Hauptstadt Indiens"Abgrenzer: Jeder Charakter oder Zeichen von Zeichen kann als Trennzeichen betrachtet werden. Wenn eine Zeichenfolge basierend auf dem Trennzeichen aufgeteilt werden soll, sollte der Graditer ein Teil der String sein oder die vollständige Zeichenfolge ist die Ausgabezeichenfolge.
Häufig verwendete Trennzeichenbeispiel.
Aufteilung der Zeichenfolge basierend auf dem Trennzeichen:
Betrachten wir eine Beispiel -Saite als „Fuchs lebt in Wäldern“ und ein Grenzwert als „(Raum), dann wird die Saite in mehrere Zeichenfolgen aufgeteilt. Mehrere Saiten nach Split werden "Fuchs" sein "lebt" in "" Woods ".
Jetzt sind wir uns also klar über das Konzept der Aufteilung und auch auf der Definition der Zeichenfolge und der Grenzwerterin sind wir jetzt klar. Lassen Sie uns mit der Untersuchung der Implementierung der Aufteilung in C fortfahren.
Standard -C -Funktion für Split basierend auf dem Trennzeichen:
C liefert die Strtok () Funktion, mit der die Zeichenfolge basierend auf dem ausgewählten Trennzeichen in Token aufgeteilt werden kann.
Funktionsprototyp:
char *strtok (char *einschränken str, const char *einschränken Grenz);Header zum Aufnehmen:
#enthaltenC Programm zum Aufteilen der Zeichenfolge basierend auf dem Trennzeichen mit Strtok ():
#enthaltenC Programm -Schnappschuss:
Ausgabe des Programms:
Lassen Sie uns nun unsere eigene Implementierung diskutieren, um die Zeichenfolge auf der Basis von Trennzeichen zu teilen, ohne die Standard -C -Funktion (Strtok ()) zu verwenden.
Wir müssen die Trennzeichenpräsenz in der Zeichenfolge durchsuchen und die Adresse des ersten Zeichens des String -Tokens kurz vor dem Trennzeichen zurückgeben.
C Funktion zum Durchsuchen des auf dem Trennzeichens basierenden Token kann wie unten implementiert werden:
char *search_token (char *string, char *delim)Oben ist die Suchfunktion, die nach dem Token suchen kann. Sobald Token Zeichen gefunden wird, bevor das Token kopiert und aus dem Quell -String -Puffer abgerufen werden kann.
Das vollständige C -Programm mit unserer Implementierung sieht nach unten aus:
#enthaltenAusgabe aus dem obigen Programm mit demselben Eingangssatz nach Standard -C -Strtok -Funktion:
Bash-4.2 $ ./A.ausSchnappschüsse des vollständigen Programms:
Snapshot Ausgabe:
Abschluss:
Bisher haben wir über die Aufteilung der Zeichenfolge besprochen, die auf dem Trennzeichen basiert. Es gibt bereits Möglichkeiten zur Bibliothek, dies zu tun. Die Bibliotheksfunktion, mit der die Zeichenfolge basierend auf dem Trennzeichen aufgeteilt werden kann, ist Strtok. Wir haben einen Beispiel verwendet, um die Bibliotheksfunktion Strtok zu verstehen. Außerdem haben wir ein Beispielprogramm geschrieben, um die Verwendung der Bibliotheksfunktion zu verstehen.
Zweiten Teil haben wir unsere eigene Methode zur Aufteilung der Zeichenfolge auf der Basis von Trennzeichen implementiert. Wir haben eine Funktion geschrieben, die wie C -Funktion Strtok ist. Erläuterung der Funktionsweise der benutzerdefinierten Funktion wurde mit Hilfe derselben Hauptfunktion bereitgestellt und demonstriert, die bei der C -Bibliotheksfunktion übernommen wurde. Die Beispielausgabe des Programms wird auch mit dem Beispielprogramm bereitgestellt.
Wir haben auch das Konzept der String -Split basierend auf dem Trennzeichen durchlaufen, nur um jedes Zeichen, das in der Hauptzeichenfolge ist. Sobald das Token gefunden wurde, wird die Zeichenfolge vor dem Token an die Anruferfunktion zurückgegeben.