Probleme mit Tastatur



  • Hallo

    ich habe hier dieses sehr einfache Stückchen Code:

    #include <stdio.h>
    #include <stdlib.h>
    
    int main()
    {
    	char input, input2;
    
    	printf("1. Eingabe:\n--> ");
    
    	scanf("%1c", &input);
    	printf("Ausgabe: %c\n", input);
    
    	printf("2. Eingabe:\n--> ");
    
    	scanf("%1c", &input2);
    	printf("Ausgabe: %c\n", input2);
    
    	return 0;
    }
    

    Nun mein Problem. Wenn ich in der ersten Eingabe mehr eingeben, als ein Zeichen wird die 2. Eingabe übersprungen. Gibt es unter Linux möglichkeiten den Tastaturbuffer zu leeren. fflush() funktioniert nicht. Habe es auch mit alternativen zu scanf probiert, was mich aber auch nicht zum Erfolg führte. Wäre toll wenn mir jemand helfen könnte

    thx



  • int c; while ((c = getchar()) != EOF && c != '\n');



  • thx

    scheint zu funktionieren


Anmelden zum Antworten