Anzeige:
Ergebnis 1 bis 12 von 12

Thema: while ( !tastendruck )

  1. #1
    Registrierter Benutzer
    Registriert seit
    29.07.2001
    Ort
    Wien
    Beiträge
    90

    while ( !tastendruck )

    Ich glaub ich steh grad mal wieder auf der Leitung....

    brauche in C eine Schleife die solange ausgeführt wird, bis eine taste gerdückt wird...

    (also wie REPEAT UNTIL keypressed in Pascal)

    steh entweder grad auf der Leitung oder hab schon zuviel Bier getrunken
    Diese Message wurde erstellt mit freundlicher Unterstützung eines frei-
    laufenden Pinguins aus artgerechter Freilandhaltung. Er ist garantiert
    frei von Micro$oft'schen Viren.

  2. #2
    Administrator Avatar von anda_skoa
    Registriert seit
    17.11.2001
    Ort
    Graz, Österreich
    Beiträge
    5.477

    Re: while ( !tastendruck )

    Original geschrieben von ComSubVie
    Ich glaub ich steh grad mal wieder auf der Leitung....

    brauche in C eine Schleife die solange ausgeführt wird, bis eine taste gerdückt wird...
    Mein Kenntnisstand sagt dazu, dass man da ncurses braucht, weil die Eingabe unter Unix gepuffert ist.
    Allerdings sagt der OP in diesem Thread hier etwas anderes
    http://www.mrunix.de/forums/showthre...threadid=18971


    steh entweder grad auf der Leitung oder hab schon zuviel Bier getrunken
    Oder zu wenige und die Erleuchtung hat sich noch ned eingestellt

    Ciao,
    _
    Qt/KDE Entwickler
    Debian Benutzer

  3. #3
    Registrierter Benutzer
    Registriert seit
    29.07.2001
    Ort
    Wien
    Beiträge
    90
    hm, irgendwie schlecht. das rennt dann ja nimma systemunabhängig (ncurses hat dazu has_key wenn ich de manpage richtig interpretiert habe. morgen nüchtern nochmal lesen)

    getchar() tut meiner meinung nach auf ein zeichen warten - werd ich trotzdem probieren...
    Diese Message wurde erstellt mit freundlicher Unterstützung eines frei-
    laufenden Pinguins aus artgerechter Freilandhaltung. Er ist garantiert
    frei von Micro$oft'schen Viren.

  4. #4
    Registrierter Benutzer
    Registriert seit
    29.07.2001
    Ort
    Wien
    Beiträge
    90
    while ( !_kbhit() )
    müsste es eigentlich tun (ohne alk denkt sichs viel leichter )
    Diese Message wurde erstellt mit freundlicher Unterstützung eines frei-
    laufenden Pinguins aus artgerechter Freilandhaltung. Er ist garantiert
    frei von Micro$oft'schen Viren.

  5. #5
    Administrator Avatar von anda_skoa
    Registriert seit
    17.11.2001
    Ort
    Graz, Österreich
    Beiträge
    5.477
    Interessant.
    Was muß man dafür inkludieren, bzw. wo ist es dokumentiert?

    Ciao,
    _
    Qt/KDE Entwickler
    Debian Benutzer

  6. #6
    Registrierter Benutzer
    Registriert seit
    29.07.2001
    Ort
    Wien
    Beiträge
    90
    naja, es gibt da noch ein kleines problem... das braucht die conio.h - und die gibts nur unter DOS/win32....

    es gibt dann noch die funktion select (man 3 select) die müsste auch das gewollte können, aber ich blick da nicht ganz durch....

    systemübergreifendes hab ich also bisher noch nix gefunden
    Diese Message wurde erstellt mit freundlicher Unterstützung eines frei-
    laufenden Pinguins aus artgerechter Freilandhaltung. Er ist garantiert
    frei von Micro$oft'schen Viren.

  7. #7
    Administrator Avatar von anda_skoa
    Registriert seit
    17.11.2001
    Ort
    Graz, Österreich
    Beiträge
    5.477
    Du bist mir einer
    Benutzt die conio und regt sich bei ncurses auf.

    Ich glaube curses gibt es für mehr Plattformen als conio

    Ich kann mich dunkel erinnern, dass man die Pufferung der Standard In irgendwie abschalten kann.
    Dann würde auch getchar gehen.

    Ciao,
    _
    Qt/KDE Entwickler
    Debian Benutzer

  8. #8
    Registrierter Benutzer
    Registriert seit
    29.07.2001
    Ort
    Wien
    Beiträge
    90
    ich benutze weder noch, ich hab das auch erst zu spät gemerkt das kbhit nur in der conio vorhanden ist.... irgendwie is das ganze noch ein wenig pfusch
    Diese Message wurde erstellt mit freundlicher Unterstützung eines frei-
    laufenden Pinguins aus artgerechter Freilandhaltung. Er ist garantiert
    frei von Micro$oft'schen Viren.

  9. #9
    Registrierter Benutzer
    Registriert seit
    07.02.2003
    Beiträge
    17
    Original geschrieben von anda_skoa

    Ich kann mich dunkel erinnern, dass man die Pufferung der Standard In irgendwie abschalten kann.
    Dann würde auch getchar gehen.
    licht ins dunkel: http://www.erlenstar.demon.co.uk/unix/faq_4.html#SEC49

  10. #10
    cyneox
    Gast

    zu kompliziert!!!

    warum denkt ihr immer so kompliziert ???warum nehmt ihr nicht einfach die funktion getchar() ????

    hm.....warum????

  11. #11
    Administrator Avatar von anda_skoa
    Registriert seit
    17.11.2001
    Ort
    Graz, Österreich
    Beiträge
    5.477

    Re: zu kompliziert!!!

    Original geschrieben von cyneox
    warum denkt ihr immer so kompliziert ???warum nehmt ihr nicht einfach die funktion getchar() ????
    Standard Input ist gepuffert, da wird auch getChar erst beendet, wenn Ente gdrückt wurde.
    getChar nimmt dann nur das erste Zeichen aus dem Inputpuffer.

    Ciao,
    _
    Qt/KDE Entwickler
    Debian Benutzer

  12. #12
    Registrierter Benutzer
    Registriert seit
    26.12.1999
    Ort
    Stuttgart
    Beiträge
    259
    Hi,

    schau Dir mal getkey.c aus den splashutils an: ftp://ftp.suse.com/pub/people/stepan...hutils.tar.bz2

    Gruß micha
    IRC: irc.euirc.net #tux

Lesezeichen

Berechtigungen

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