linux printf 不立即显示

1.加上\n换行符,使得缓冲区立即输出

2.

 fflush(stdout); //  刷新一下缓冲区 让它马上输出.  在printf 之后调用它,就会马上输出了.

 setvbuf(stdout,NULL,_IONBF,0); //如果你嫌上个方法麻烦, 就使用这个函数. 直接将缓冲区禁止了. 它就直接输出了.

这两个函数都是有关流缓冲区的. 具体使用和说明网上有很多.   我只说一下什么是流缓冲区, 是做什么用的.  操作系统为减少 IO操作 所以设置了缓冲区.  等缓冲区满了再去操作IO. 这样是为了提高效率.

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 概述 java.io 包几乎包含了所有操作输入、输出需要的类。所有这些流类代表了输入源和输出目标。java.io ...
    Steven1997阅读 13,017评论 1 25
  • C/C++输入输出流总结 前两天写C++实习作业,突然发现I/O是那么的陌生,打了好长时间的文件都没有打开,今天终...
    LuckTime阅读 5,665评论 0 6
  • linux资料总章2.1 1.0写的不好抱歉 但是2.0已经改了很多 但是错误还是无法避免 以后资料会慢慢更新 大...
    数据革命阅读 14,182评论 2 33
  • 作者首先要我们回答:你想要什么?什么是真实的?你会为它做些什么? 通篇要求我们必须保持思想开放,并真实的面对自己的...
    寒方芳阅读 3,610评论 0 0
  • 谨以此方献给无私奉献的老师和其他声音工作者 感谢此方的提供者林老师(林老师高风亮节,不求名利,未经同意,不能署名)...
    中医王长志阅读 3,980评论 0 1