<分区>
当我多次使用 scanf 时,程序不会等待另一输入。相反,它退出
我了解到我可以在 scanf 函数中的转换说明符之前放置一个空格 - 是的,这解决了问题,我猜这与输入流有关,也就是说 - 如果它是输入流中的换行符scanf 将立即使用它。
scanf(" %f", &value);
但如果是这样 - 为什么我不能改用 fflush(stdin)?我已经尝试过,但它不起作用。
#include <stdio.h>
int main(void)
{
float value;
char ch;
printf("input value: ");
scanf("%f", &value);
fflush(stdin);
printf("input char: ");
scanf("%c", &ch);
return 0;
}