Ergebnis 1 bis 9 von 9
  1. #1
    Mitglied
    Registriert seit
    Apr 2007
    Beiträge
    76

    Standard [pascal] string einlesen

    Hallo ich habe ein kleines problem!
    Nehmen wir mal das als Beispiel;

    Code:
    program test;
    uses crt;
    var y,x:string;
    begin
    writeln ('x');
    read (x);
    writeln ('y');
    read (y);
    writeln ('Ausgabe: ',x,y);
    readkey;
    end.
    Er soll also 2 Variable vom typ strin einlesen, und sie dann nacheinander ausgeben, eigentlich ganz simpel aber warum liest er y nicht ein? Das Programm ließt nur X ein und springt direkt zur Ausgabe, also y zeigt er auch noch an, ließt aber nicht ein! Also das ganze sieht dann so aus:

    Code:
    x
    qqq
    y
    Ausgabe: qqq
    wenn qqq bei X eingegeben wurde.

    Ich bin noch ein totaler Anfänger, aber wieso macht er das nicht? Wäre nett wenn ihr einen tipp hättet!

    Achja: als Compiler wird Free Pascal verwendet!
    Geändert von CrackBimbo (18. 01. 2010 um 09:50 Uhr)

  2. #2
    Fluchend Avatar von flo8464
    Registriert seit
    Jul 2006
    Beiträge
    1.733

    Standard Re: [pascal] string einlesen

    Warscheinlich werden Zeichen im Input-Buffer sein.
    Mach den mal leer.

  3. #3
    Mitglied

    (Threadstarter)


    Registriert seit
    Apr 2007
    Beiträge
    76

    Standard Re: [pascal] string einlesen

    und wie macht man das, ich dachte mir schon, dass das irgendwie was mit damit zu tun hat, ich wusste aber nicht wie ich er die Variable wieder "Vergessen" kann!

  4. #4
    Googolplexian Avatar von Fero63
    Registriert seit
    May 2009
    Ort
    Düsseldorf
    Beiträge
    636

    Standard Re: [pascal] string einlesen

    In C geht das mit fflush(stdin). Such am besten mal nach einer Pascal-Prozedur, die Flush, oder so ähnlich heißt.

  5. #5
    Mitglied

    (Threadstarter)


    Registriert seit
    Apr 2007
    Beiträge
    76

    Standard Re: [pascal] string einlesen

    Also ich hab jetzt mindestens ne stunde gegoogelt aber ich fi einfach nichts, es muss doch irgentwas geben, womit man die variable löschen zurücksetzen kann.
    Hat niemand ne idee?

  6. #6
    0xC0FFEE-F4N Avatar von _Ad_aCTa_
    Registriert seit
    Jul 2008
    Ort
    Potsdam
    Beiträge
    263

    Standard Re: [pascal] string einlesen

    >> fflush(stdin)

    Schäm dich. Du hast nicht aufgepasst. In C ist es undefiniertes Verhalten, den Input-Stream zu flushen.

  7. #7
    Fluchend Avatar von flo8464
    Registriert seit
    Jul 2006
    Beiträge
    1.733

    Standard Re: [pascal] string einlesen

    In C++ ist es ifstream::sync()

    Also vlt irgendetwas mit sync.

  8. #8
    Mitglied

    (Threadstarter)


    Registriert seit
    Apr 2007
    Beiträge
    76

    Standard Re: [pascal] string einlesen

    also ich hab jetzt rausgefunden worans lag:

    man muss statt read readln verwenden, dann ließt er soviele ein wie man will also praktisch so:

    Code:
    program test;
    uses crt;
    var y,x:string;
    begin
    writeln ('x');
    readln (x);
    writeln ('y');
    readln (y);
    writeln ('Ausgabe: ',x,y);
    readkey;
    end.

  9. #9
    Googolplexian Avatar von Fero63
    Registriert seit
    May 2009
    Ort
    Düsseldorf
    Beiträge
    636

    Post Re: [pascal] string einlesen

    Zitat Zitat von _Ad_aCTa_ Beitrag anzeigen
    Schäm dich. Du hast nicht aufgepasst. In C ist es undefiniertes Verhalten, den Input-Stream zu flushen.
    Ups! Naja - war ja auch nur als Anhaltspunkt gedacht, um vielleicht ein Pascal-Äquivalent zu finden.

  10.  
     
     

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •