#include <stdio.h>
#include <stdlib.h>
int main()
{
int i,N;
for(i=0;i<5;i++)
{
printf("Enter The Number n");
scanf("%d", &N);
printf("HELLO %d n",N);
}
return 0;
}
当我在 NetBeans 中执行上述代码时,输出不是逐行执行的,所有输出都一起执行,即循环结束时执行一次......问题是 printf 和 scanf 不起作用
你对问题的描述其实很好:
许多 C 运行时库可以检测stdout
是否连接到交互式设备(控制台窗口/终端(。
根据这一点,选择默认缓冲模式。
在终端/控制台窗口中执行程序,您将获得交互式设备的标准缓冲。
或者,呼叫
setvbuf(stdout, 0, _IOLBUF, BUFSIZ);
之前,对该流执行任何其他操作会将stdout
流设置为默认的行缓冲操作。