Spezifizierte Eingabe?



  • Hallo ich versuche mein Programm nur spezielle Eingaben einlesen zu lassen...
    So wie z.B. "Möchten sie wirklich beenden?" (Einlesen nur: Y/N )
    Kann mir jemand weiterhelfen?
    PS: Ich bin ziemlicher Anfänger also wenn es geht so einfach wie möglich...


  • Mod

    Wenn die Eingabe nicht Y oder N ist, dann verwirfst du sie und liest noch einmal ein.



  • Zwar nicht so einfach wie möglich aber so kurz wie möglich könnte sein:

    char c[2];
    if( 1==scanf("%1[ynYN]",c) )
      puts("Y/N gedrückt");
    else
      puts("was anderes");
    while( '\n'!=getchar() ); /* Eingabepuffer löschen */
    

    Ich hoffe du erkennst, dass auch kleine y/n erlaubt sind.
    Es wird nur das erste eingegebene Zeichen ausgewertet, alle evtl. folgenden Zeichen inkl. '\n' (<ENTER>) werden ignoriert und aus dem Eingabepuffer gelöscht.



  • Danke das hab ich sogar verstanden...
    🙂


Anmelden zum Antworten