Я установил stdin
с полной буферизацией следующим образом:
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
char buffer[BUFSIZ];
if (setvbuf(stdin, buffer, _IOFBF, BUFSIZ) != 0) { // here
printf("an error occured.\n");
exit(1);
}
int number;
scanf("%d", &number);
printf("number : %d\n", number);
return 0;
}
Тем не менее, результат показывает, что stdin
все еще с буферизацией строки. Почему это так?
3
number : 3