所以我运行程序,它进行打印,读取我从键盘输入的字符,切换到适当的情况,但不是返回循环顶部并在 fscanf 处停止以接收进一步的输入,它起作用就像它已经收到新行或其他内容并切换到默认情况,再次返回循环顶部并期待输入。我错过了什么?
这是代码:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main () {
char *command;
command = malloc (2);
while (1) {
printf ("Type help for usage\n");
printf ("Enter command: \n");
fscanf (stdin,"%c",command);
switch (command[0]) {
case 'a':
printf ("a\n");
break;
case 'h':
printf ("help\n");
break;
default:
printf ("default\n");
}
}
return 0;
}