首页 文章

没有\ n的printf在放置之前不显示文本while(1)[duplicate]

提问于
浏览
3

可能重复:为什么printf在调用后不刷新,除非换行符在格式字符串中? (在C中)

我在做网络项目时遇到了这个问题 . 我能够缩小问题的范围,并像这样重现:

如果您运行此代码,它将不会在屏幕上显示文本 . 虽然如果你把\ n放在文本的末尾或者在printf语句之后使用fflush(),它会显示文本 .

int main(){
printf("started") ;
while(1){
}
}

任何人都可以解释这种行为吗?

1 回答

  • 6

    如果没有 \n ,输出就不会刷新到屏幕 .

    printf 之后添加 fflush(stdout); ,您应该看到输出 .

相关问题