Einführung:
Saiten sind ein wesentlicher Bestandteil von Programmierung , weil sie die Kommunikation mit ermöglichen Benutzer anzeigen, Ergebnisse anzeigen und Dateien lesen . Sie sind eine Art Dateneingabe- und -ausgabemechanismus. Seit Saiten Da sie in den von uns erstellten Programmen ständig in gewisser Weise verwendet werden, ist eine effiziente Handhabung von Zeichenfolgen und den Funktionen, die sie verarbeiten, von entscheidender Bedeutung.
In diesem Tutorial erfahren Sie, wie Sie Texte mithilfe von Trennzeichen unterteilen strsep()-Methode .
Wir werden das durchgehen Eingang Und Ausgabeargumente für strsep() , es ist Syntax Und theoretische Erklärung und die zulässigen Datentypen für jedes dieser Argumente.
Als nächstes setzen wir das Gelernte in die Praxis um, indem wir Codeschnipsel und Grafiken verwenden, um Zeichenfolgen mithilfe von zu fragmentieren strsep()-Methode , was in den Praxisbeispielen demonstriert wird.
Strsep()-Funktionssyntax in der C-Sprache:
char *strsep(char **restrict stringp, const char *restrict delim);
Eine Erklärung der Strsep()-Funktion in C:
- A Zeichenfolge wird mit dem zerlegt strsep()-Funktion , beginnend mit einem vordefinierten Trennzeichen.
- Der Zeichenfolge darauf hingewiesen durch die stringp-Eingabe Das Argument wird durch diese Funktion aufgeteilt und die Teile werden dann zu neuen Zeichenfolgen zusammengefügt, die alle mit dem Nullzeichen enden.
- Jede neue Zeichenfolge beginnt bei Adresse durch den Ausgabezeiger gegeben und endet dort, wo die Trennzeichen spezifiziert durch Ich teile Und strsep() Wenn ein Trennzeichen gefunden wird, ersetzt die Funktion es durch ein Nullzeichen, um das Ende der neuen Zeichenfolge anzuzeigen.
- Der stringp-Zeiger wird automatisch am Anfang des Fragments gesetzt, nachdem das Trennzeichen erkannt wurde, wenn die Funktion von ihrem Aufruf zurückkehrt. Der stringp-Zeiger ist nun darauf vorbereitet, das nächste Fragment im folgenden Funktionsaufruf zu erhalten. Bis strsep() Es sind keine Trennzeichen mehr vorhanden und es wird ein Nullzeiger zurückgegeben. Dadurch wiederholt sich dieser Vorgang bei jedem Anruf.
Es ist wichtig zu beachten, dass diese Funktion den Eingabetext unwiderruflich ändert, indem sie die Trennzeichen durch Nullzeichen ersetzt. Der 'string.h'-Header enthält die Definition der strsep()-Funktion . Wir müssen es wie folgt in unseren Code einbauen, um es und die anderen String-Verwaltungsfunktionen nutzen zu können:
#include
So verwenden Sie die Strsep()-Funktion der C-Sprache, um einen String in mehrere Fragmente aufzuteilen
In diesem Beispiel die Phrase „Lasst uns mit dem Programmieren beginnen“ wird als String erstellt und sein Inhalt wird mithilfe von zerlegt strsep()-Funktion . Jeder der neu erstellten Strings wird dann in einer separaten Zeile im erzeugt Befehlsterminal . Die Zeichenfolge, auf die die zeigt stringp Der Eingabeparameter wird Wort für Wort aufgeteilt, da das Trennzeichen, das wir im delim-Eingabeargument verwenden, das ist Leerzeichen (' ') .
Java sortiert eine Liste
Wir erklären die 'Sünde' String zusammen mit dem Text „Lasst uns mit dem Programmieren beginnen“ und das 'in_Ptr'-Zeiger im Hauptfunktion . Der stringp der Funktion strsep() Eingabeargument ist dieser Zeiger.
Als die Trennen Sie das Eingabeargument für die strsep()-Methode und dem vorgesehenen Trennzeichen deklarieren wir zusätzlich das 'string del' mit dem Leerzeichen. Als nächstes erklären wir die 'o_Ptr'-Zeiger , das als verwendet wird Das Ausgabeargument von strsep() . Der printf()-Methode verwendet diesen Zeiger als Eingabeargument, um das wiederhergestellte Fragment auf der Befehlskonsole anzuzeigen.
Danach, nach der Bereitstellung der der Saite als erstes Argument das 'in_Ptr' Zeiger als zweiten Parameter und der 'o_Ptr'-Zeiger Als Ausgabeargument nennen wir das strsep()-Funktion . Dieser Anruf erfolgt innerhalb von a while-Schleife mit der Escape-Bedingung, dass es keine Trennzeichen mehr gibt, wenn strsep() gibt zurück ein Nullzeiger.
Der Code für dieses Beispiel lautet wie folgt:
#include #include int main() { char s_in[50] = 'Let's start programming '; char del[20] = ' '; char* in_Ptr = s_in; char* o_Ptr; while ((o_Ptr = strsep(&in_Ptr, del)) != NULL) { printf('%s ', o_Ptr); } return 0; }
Strsep() teilt die 'Sünde' Zeichenfolge Wort für Wort, wodurch jedes Mal eine neue Zeichenfolge entsteht, die dann in einer neuen Zeile in der Befehlskonsole angezeigt wird, wie unten gezeigt;
Linux-Änderungsdatei
Ausgabe:
Let's start programming
Abschluss
In diesem Artikel haben wir gezeigt, wie man Strings mit verarbeitet strsep()-Funktion , eine der in der angegebenen Funktion 'string.h' Header. Wir haben über die theoretische Begründung dafür gesprochen Syntax, Aufruftechnik , Und Betrieb . Darüber hinaus haben wir die Art von Daten demonstriert, die jedes Eingabe- und Ausgabeargument akzeptiert.