Problem mit Konsolenanwendung



  • Niie schrieb:

    Läuft es bei Dir richtig?

    Ja.

    Aber: Wie kommst du auf

    cin.ignore(BUFSIZ, '\n');
    

    ?

    Was passiert mit Eingaben wie 66000fooo bzw. 12bar ?



  • Bei Eingaben wie 12bar erscheint zwar eine Fehlermeldung die so nicht sein sollte aber das Programm läuft zumindest durch und rechnet auch korrekt um.

    Ich will mit

    cin.ignore(BUFSIZ, '\n');
    

    alle Zeichen aus dem Puffer löschen dabei ist BUFSIZ ein vordefinierter wert in höhe des Puffers.



  • Niie schrieb:

    [...] dabei ist BUFSIZ ein vordefinierter wert in höhe des Puffers.

    Schau' mal.



  • mein compiler sagt auch das BUFSIZ nicht deklariert ist.

    Ich glaube du müsstest erstmal sowas machen

    #define BUFSIZ 256
    

    oder in deine zeilen 53 und 74 direkt

    cin.ignore(256, '\n');
    

    schreiben.

    Bei mir hat er jetzt keine lange ladezeit.



  • Photon schrieb:

    mein compiler sagt auch das BUFSIZ nicht deklariert ist.

    Ich glaube du müsstest erstmal sowas machen [...]

    BUFSIZ.



  • ok ist es dann weil kein setbuf verwendet wurde? weil mein compiler will das so wie es ist nicht ausführen. Aber ich hab auch nicht so viel ahnung.



  • Photon schrieb:

    ok ist es dann weil kein setbuf verwendet wurde?

    Ich glaub' nicht, daß C-I/O-Streams ( FILE * ) in dieser Hinsicht viel mit C++-IO-Streams ( std::istream , std::ostream ) zu tun haben.

    Photon schrieb:

    [...] weil mein compiler will das so wie es ist nicht ausführen.

    "So wie es ist" kann ich in meiner Glaskugel nicht erkennen.

    Swordfish schrieb:

    Schau' mal.

    Du willst

    #include <limits>
    #include <iostreams>
    
    // ...
    
    std::cin.clear();
    std::cin.ignore( std::numeric_limits< std::streamsize >::max(), '\n');
    
    // ...
    


  • Swordfish schrieb:

    Schau' mal

    Kannst'd' 'mal mit dei'nen Deppenapostrophen aufhör'n? Das' is' wirklich' un'erträglich!
    Lass die einfach weg.
          ↑ Es heisst z.B. lass und nicht lass', wie auch is (für ugs. ist) und nicht is'.



  • fischkopf schrieb:

    Swordfish schrieb:

    Schau' mal

    Kannst'd' 'mal mit dei'nen Deppenapostrophen aufhör'n? Das' is' wirklich' un'erträglich!
    Lass die einfach weg.
          ↑ Es heisst z.B. lass und nicht lass', wie auch is (für ugs. ist) und nicht is'.

    Im Falle von "Schau mal!" hast du tatsächlich Recht.

    fischkopf schrieb:

    Kannst'd'

    Bei der Auslassung von ganzen Wörtern (du) braucht's kein Apostroph.

    fischkopf schrieb:

    'mal

    Auslassung von "ein" am Wortbeginn. Ok.

    fischkopf schrieb:

    [...] dei'nen

    Keine Auslassung ➡ Deppenapostroph

    fischkopf schrieb:

    aufhör'n

    Auslassung des e.

    fischkopf schrieb:

    Das'

    Keine Auslassung ➡ Deppenapostroph

    fischkopf schrieb:

    is'

    Auslassung des t.

    fischkopf schrieb:

    wirklich'

    Keine Auslassung ➡ Deppenapostroph

    fischkopf schrieb:

    un'erträglich

    Keine Auslassung ➡ Deppenapostroph

    fischkopf schrieb:

    Es heisst z.B. lass und nicht lass' [...]

    Wo hab' ich jemals "lass'" geschrieben??



  • Swordfish schrieb:

    fischkopf schrieb:

    Es heisst z.B. lass und nicht lass' [...]

    Wo hab' ich jemals "lass'" geschrieben??

    "lass'" ist genauso dämlich wie die Forme, die du wirklich verwendet hast.

    Kleine Liste der von dir in letzter Zeit gebrauchten Apostrophen:
    'mal
    hab'
    glaub'
    schau'
    dacht'
    such'
    könn't
    zeig'
    schau'
    seh'
    hätt'
    gern'
    'ne
    für's
    'raussuchen
    soll's
    hab'
    mach'ma
    d'raus
    wär's
    d'rumherum
    hab'
    wie's
    graut's
    geh'
    würd'
    wär's
    'raus
    gäb's

    Jedes einzelne ist entweder falsch oder unüblich. Bei mach'ma hiesse richtig mach ma', ansonsten wäre nie ein Apostroph angebracht.

    Grundsätzlich gilt: http://www.canoo.net/services/GermanSpelling/Regeln/Interpunktion/Apostroph.html

    Man schreibt im Allgemeinen keinen Apostroph für das weggefallen Schluss-e in häufig gebrauchten Varianten von auf e endenden Wörtern

    Bei verkürzten Formen von mit herauf, heraus, herein, herüber, herunter usw. gebildeten Wörtern schreibt man im Allgemeinen keinen Apostroph

    Die amtlichen Regeln sind weniger explizit, sie listen nur Fälle auf, bei denen Apostrophe gebraucht werden.

    (2) Wörter mit Auslassungen, die ohne Kennzeichnung schwer lesbar
    oder missverständlich sind

    Keine deiner Nutzungen erhält ohne Apostroph eine schwer verständliche Bedeutung.

    Man kann den Apostroph setzen, wenn Wörter gesprochener Sprache
    mit Auslassungen bei schriftlicher Wiedergabe undurchsichtig sind.

    graut's => Heute als geflügeltes Wort auch ohne Apostroph verständlich: http://de.wikipedia.org/wiki/Liste_gefl%C3%BCgelter_Worte/H#Heinrich.21_Mir_grauts_vor_dir.
    d'rumherum => drumherum steht sogar so im Duden
    mach'ma => ja, machma ist komisch. Aber der Apostroph steht am falschen Ort.

    Der Apostroph steht nicht dann, wenn man irgendwo etwas weggelassen haben könnte, sondern wenn es ihn wirklich braucht.


Anmelden zum Antworten