[C/C++] einfaches script mit strchr() und strtok()

Dieses Thema im Forum "Programmierung & Entwicklung" wurde erstellt von myth2806, 23. Oktober 2006 .

Schlagworte:
  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen
  1. #1 23. Oktober 2006
    einfaches script mit strchr() und strtok()

    Hi leutz,

    also ich habe folgendes kleines script zum testen gebaut nur leider funktioniert es nicht. als Ausgabe bekomme ich nur den hostnamen (wenn als argv zb "google.de/muh/index.html" angegeben ist) angezeigt aber der path bleibt leer.

    Code:
    char* string = argv[1];
    char* path = strchr(string, (int)'/');
    char* host = strtok(string, "/");
    printf ("host: %s\npath:%s\n", host,path);
    
    hoffe einer von euch hat ne idee wie es geht. wenn ich nämlich nur den path auslese und ihn einzelnd ausgebe dann funktionierts.

    greez myth
     
  2. Heute: Deals & Sale mit stark reduzierten Angeboten finden. ✅

  3. #2 23. Oktober 2006
    AW: einfaches script mit strchr() und strtok()

    Code:
    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    
    #define BUF 256
    
    int main(int argc, char *argv[])
    {
     char host[BUF], path[BUF];
     int i, len;
     
     len = strlen(argv[1]); // Speichert die Laenge des Strings
     
     for(i=0;i<len;i++) 
     {
     if(argv[1][i] == '/')
     {
     host[i]='\0';
     break; 
     } 
     host[i]=argv[1][i]; // Liest solange ein bis das Zeichen '/' vorkommt,
     } // also dein Pfad
     
     printf("host: %s\n",host); 
     
     snprintf(path, BUF, "%s", strstr(argv[1],"/")); 
     printf("path: %s\n",path); 
     
     
     return 0; 
    }
    
    Hier hast du etwas Code und genuegend Kommentare.
    So viel gibt es da ja nicht zu erklaeren, man muss nur wissen wie man die
    Funktionen nutzt ;-)
     
  4. #3 24. Oktober 2006
    AW: einfaches script mit strchr() und strtok()

    Hi,

    oder mit strtok:

    Code:
    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    
    #define MAX_BUF 1024
    
    int main(int argc, char **argv)
    {
     unsigned int nr_of_chars = 3; // muesstest du ausrechnen
     char result[nr_of_chars][MAX_BUF]; // Array, in dem alles gespeichert wird
    
     char *ptr;
     unsigned int now = 0;
     int tmp = 1;
    
     for (tmp = 1; tmp < argc; tmp++)
     {
     ptr = strtok(argv[tmp],"/"); // splitten
     while (ptr != NULL)
     {
     strncpy(result[now],ptr,MAX_BUF - 1); // reinkopieren
     now++;
     ptr = strtok(NULL,"/");
     }
     }
    
    return 0;
    }
    Mfg,

    Kolazomai
     

  5. Videos zum Thema
    Video Script
Die Seite wird geladen...

Ähnliche Themen mit den Stichworten: C++ einfaches script

  1. Antworten:
    5
    Aufrufe:
    827
  2. [C/C++] einfaches Addieren klappt nicht
    Dragonknight, 10. Oktober 2009 , im Forum: Programmierung & Entwicklung
    Antworten:
    7
    Aufrufe:
    1.997
  3. [C++] WiFi/Sensor Code kürzen ?!
    giorgio, 5. Juli 2019 , im Forum: Projekte / Codes
    Antworten:
    5
    Aufrufe:
    2.001
  4. Antworten:
    4
    Aufrufe:
    1.670
  5. Antworten:
    1
    Aufrufe:
    2.425