Im folgenden Code, egal was ich eingabe, es gibt immer die entsprechende case-Anweisung mit einer Standard-Case-Anweisung! Aber wenn ich die Schleife while (1) {} lösche, funktioniert alles gut. Warum passiert dies? Schleife (gleich für für (;;) Schleife) Fehler oder Fehler des Standardfalls? Wie kann ich den Code so ändern, dass er innerhalb einer Schleife korrekt gedruckt wird?#default wird jedes Mal ausgegeben - Switch case
#include <stdio.h>
#include <ctype.h>
#include <conio.h>
int main(){
char ch;
puts("Client Management System");
puts("========================");
puts("A: add task");
puts("D: delete task");
puts("U: modify task");
puts("Q: quit system");
while(1){
ch = getchar();
ch = toupper(ch);
switch(ch){
case 'A':
puts("adding task......");
break;
case 'D':
puts("deleting task......");
break;
case 'U':
puts("modifying task......");
break;
case 'Q':
return 0;
default:
puts("invalid option");
}
}
return 0;
}
gibt es Pausen – user8267163
@MartinR guten Fang –
@ user8267163 einschließlich Conio ist in Ordnung, aber Sie verwenden es nicht (_getch, _kbhit). Ich glaube, das ist was du brauchst. –