qq_31652453
Dennis_uestc
2016-04-16 14:40
采纳率: 0%
浏览 2.1k

Linux下c语言延迟程序

我用的Ubuntu14.04,想写了一个延迟程序,具体是延迟一秒输出一个 '.' :
for(i =0;i<10;i++)
{sleep(1);printf(".");}
但是效果是先延迟10秒再输出10个‘.’要的效果是每一秒输出一个'.'

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • devmiao
    devmiao 2016-04-16 15:20
    点赞 评论
  • qq423399099
    小灸舞 2016-04-17 02:52

    LINUX上是在最后一起打印的,printf是在手动刷新缓冲区和缓冲区满,或遇到换行'\n',或程序正常结束时才会打印
    用printf()输出时是先输出到缓冲区,然后再从缓冲区送到屏幕上。
    解决方法: 使用fflush(stdout)强制刷新。

    点赞 评论

相关推荐