char array nach inhalt parsen



  • ich hab halt ein char array von bis zu 10000 zeichen als datenpuffer bei einer übertragung, und will jetzt nach der 2ten zeile parsen die da drin steckt.
    es handet sich um die GET anfrage eines webbrowser, also such ich ersteinmal danach.

    if (strncmp(buff, "GET", 3) == 0){
        parsen();
    }
    

    die frage ist jetzt, wie kann ich nach der neuen zeile parsen, und dann bestimmte werte ersetzen ohne eine schleife einbauen zu müssen?
    ich wollte es mit find_first_of versuchen, aber 10000 zeichen in einen string zu kopieren iss doch bissl aberwitzig ...

    ich habe mal eine entfremdete GET für euch angefertigt

    GET .... \n
    Host: 192.168.0.1:12345\n
    ....

    daraus soll werden

    GET ....\n
    Host: 192.168.0.X\n
    ....

    hat irgendwer was effektiveres als den mist zeichenweise durchzueiern und möglichst ohne riesenstrings zu kopieren ?



  • Hallo

    Du solltest erfahren genug sein, das du mit dem Gebrauch von C-Funktionen besser ins Ansi-C Forum posten solltest. In C++ nimmt man std::string, und std::string::find kann auch einen Start-Index entgegen nehmen.

    bis bald
    akari



  • habs gelöst bekommen, der post war eher ne kurzschlussreaktion weil mir die birne raucht wegen borland, ich werd mich bessern

    sorry

    mfg


Anmelden zum Antworten