yes/no Abfrage
-
Moin Moin!
Ich möchte eine ja/nein Abfrage erstellen:
while ((x!='y') && (x!='n')) { printf("Soll mit dem Programm fortgefahren werden?[y,n]:"); scanf("%c",&x); printf("\n"); } if (x=='n') goto end;
Das Programm zeigt an der Stelle aber folgendes an:
Soll mit dem Programm fortgefahren werden?[y,n]:
Soll mit dem Programm fortgefahren werden?[y,n]:Und dahinter ist dann der Cursor zur Eingabe. Wieso wird das zweimal ausgegeben?
-
versuche es doch mal mit einem
fflush(stdin);
vor deiner scanf()- Abfrage!
-
besten Dank, hat funktioniert!
-
Obligatorische Warnung: fflush ist nur auf Ausgabeströme definiert (stdin ist dagegen selbstredend ein Eingabestrom), das bedeutet, fflush(stdin) hat undefiniertes Verhalten.
-
Siehe dazu auch die FAQ!