C - printf 语句在 NetBean 中的 scanf 语句之前未执行


#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流设置为默认的行缓冲操作。

相关内容

  • 没有找到相关文章

最新更新