schleifendurchlauf bis tastendruck
-
hey hab ma ne blöde frage
ich bekomme über mein com port eine endlose folge von strings welche ich mit ReadFile auslese.
Ich will eigentlich in der Console nicht mit Strg-C beenden.
Es soll ,wenn eine bestimmte taste gedrückt wird ,aus der schleife rauskommen.Dachte mir zuerst
do{
ReadFile....
printf...
}while(getchar()!='x');Aber so wartet es jedesmal auf ein Tastendruck um weiterzumachen. find ich blöd.
Also zusammengefasst will ich aus der Schleife wenn 'x' gedrückt wurde.Kann mir jemand ne elegantere Lösung anbieten?
danke!
-
dann must du das glaub ich in der art machen
if (getchar()=='x')break;
-
nee ich glaub egal wie man getchar verwendet der wartet bei mir immer auf ein return um in der schleife weiterzumachen.
der soll schon die schleife ununterbrochen durcharbeiten bis ich 'x' drücke.
-
die funktion kbhit() aus conio.h gibt bei tastendruck 1 amstonsten null zurück
while(!kbhit()) { do_something(); }
getch() aus conio.h gibt das gedrückte zeichen zurück (ASCII nr)
also würde ich es so machen:
while(1) { if(kbhit()) { if(getch() == x){}//das zeichen wurde gedrückt.... } }
gruss reima
-
wow ich danke dir sehr
das habe ich gesucht!gibt noch soviele funktinen die ich net kenne