In Stringliteral Hexwerte einfuegen



  • Irgendwie hab ich vergessen wie das geht:

    Das will ich erreichen: "Hallo" dann 0x1A dann "Welt" dann 0x00
    Das hab ich versucht:

    char const test[] = "Hallo\x1AWelt\0"
    

    Das gibt zwar kein Compilerfehler, jedoch steht nacher was anderes in dem String. Der String ist eine Identifikation eines Dateiformats, und beim vergleichen kommt etwas anderes raus, obwohl die Datei diesen String enthaelt.

    Vergleichen tu ich so:

    return std::equal(test, test + sizeof(test),
                              std::istream_iterator<char>(datain));
    


  • Fehler gefunden muss entweder das \0 weglassen (wird ja eh angehaengt) oder test + sizeof(test) - 1 als Ende definieren.


Anmelden zum Antworten