ints schreiben, ints lesen



  • Ich versuche integer werte in einen
    ofstream mittels << zu schreiben:

    ofstream s("file");
    int g = 2;
    s << g;
    s << g
    

    Wenn ich dies versuche zu lesen:

    ifstream s("file");
    int g;
    s >> g; // -> 22!
    

    Liefer er mir beide werte. Kann man dem >> Operator sagen, wieviele Bytes /chars er zu lesen hat?



  • Mach halt nen Abstand zwischen den einzelnen Werten...

    s << g << " " << g;

    MfG



  • Interessant,wieso erkennt der stream den char Wert von " " nicht als Teil des integers?

    Ah Danke übrigens 🙂



  • Seikilos schrieb:

    Interessant,wieso erkennt der stream den char Wert von " " nicht als Teil des integers?

    Ah Danke übrigens 🙂

    Weil es ein String ist.



  • Tachyon schrieb:

    Seikilos schrieb:

    Interessant,wieso erkennt der stream den char Wert von " " nicht als Teil des integers?

    Ah Danke übrigens 🙂

    Weil es ein String ist.

    "32547" ist auch ein String, aber " " ist nix was in ner Zahl vorkommt.



  • Seikilos schrieb:

    Interessant,wieso erkennt der stream den char Wert von " " nicht als Teil des integers?

    Weil die Zeichenfolge "22" als einzelne Zahl interpretiert werden kann, die zeichenfolge "2 2" dagegen nicht.



  • Seikilos schrieb:

    Liefer er mir beide werte. Kann man dem >> Operator sagen, wieviele Bytes /chars er zu lesen hat?

    In dem Fall kannst du auch in ein char lesen, um nur die 2 zu bekommen.


Log in to reply