In diesem Beispiel haben wir ein Text mit der Variablenname "string". Im Text sind verschiedene Werte, die per Sonderzeichen getrennt sind. Hier sind die z.B. Datum, Uhrzeit und Wochentag. Nun möchten wir String zerteilen und jeden Wert separat ausgeben. Mit der Funktion strtok kann man ein string in C zerteilen.
1. Wir erstellen ein Zeiger, der uns die aktuelle Position zeigt, wo wir uns befinden. In diesem Fall habe ich es "ptr" genannt
2. Wir erstellen eine weitere Variable, in dem wir unser Trennzeichen speichern
3. Wir initialisieren den ersten Abschnitt, in dem Fall Datum
4. Nun brauchen wir eine Schleife, mit der wir durch den ganzen String durchlaufen können
5. In der Schleife geben wir die Werte aus und dann holen wir den nächsten Abschnitt
6. Wenn man strtok als Parameter "NULL " eingibt, springt er bis zur Abschnittsende
#include
#include // String Bibliothek einbinden
int main(){
char string[]="01.01.2015#12:00:05#Donnerstag";
char *ptr;
char delimiter[]="#";
ptr = strtok(string, delimiter);
while(ptr !=NULL){ // wiederhole solange bis ptr leer ist bzw. NULL
printf("%s \n",ptr); // aktuellen Abschnitt ausgeben
ptr = strtok(NULL, delimiter); // den nächsten Abschnitt holen
}
return 0;
}
Neuen Kommentar schreiben