Beispiele für C Programmierung : String zerlegen und splitten (parsen)

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

CAPTCHA
This question is for testing whether or not you are a human visitor and to prevent automated spam submissions.

Suche

Neueste Kommentare

  • 2 weeks 3 days ago
    How to Renew Let’s Encrypt SSL Certificate on Plesk via Ubuntu Shell

    Let’s Encrypt will only accept a wildcard via DNS challenge. 

    If your Plesk instance can’t create the _acme-challenge.example.com TXT (external DNS), the extension can’t complete validation and will show no success. 

  • 3 weeks 3 days ago
    Warning: Undefined array key "url" in Drupal\Core\Asset\CssCollectionOptimizerLazy->optimizeGroup()
    Warning: Undefined array key "url" in Drupal\Core\Asset\JsCollectionOptimizerLazy->optimizeGroup() 
  • 3 weeks 5 days ago
    Server install & config : Debian 12 + Plesk + Apache + nginx + MariaDB + Solr
    sudo timedatectl set-timezone Europe/Berlin
  • 1 month ago
    Warning: PHP Startup: Unable to load dynamic library 'apcu.so' ... cannot open shared object file: No such file or directory

    Try this:

  • 1 month 2 weeks ago
    List Cronjobs for all users (via for + crontab)

    Alternative (without warnings like "no crontab for dovecot") to see all tasks:

  • 1 month 2 weeks ago
    Install APCu (PHP 8.1, Plesk)

    php 8.3 apcu failed

    über Plesk hat es geklappt.

     

  • 1 month 2 weeks ago
    Install APCu (PHP 8.1, Plesk)

     

    install:

    # sudo apt install php-dev
    
  • 1 month 2 weeks ago
    pecl install apcu : phpize: not found / ERROR: `phpize' failed

    phpize

    # sudo apt install php-dev
    

     

    details

  • 1 month 2 weeks ago
    Install APCu (PHP 8.1, Plesk)

    Problem:

  • 3 months ago
    Install APCu (PHP 8.1, Plesk)

    Problem: