您的位置:首页 > 移动开发 > IOS开发

ios_base::sync_with_stdio(false)可以来打消iostream的输入输出缓存,可以节省许多时间,使效率与scanf与printf相差无几

2017-06-18 19:34 309 查看
http://bbs.csdn.NET/topics/280019504
http://tieba.baidu.com/p/2643059585
决定C++标准streams(cin,cout,cerr...)是否与相应的C标准程序库文件(stdin,stdout,stderr)同步,也就是是否使用相同的stream缓冲区,缺省情况是同步的,但由于同步会带来某些不必要的负担,因此该函数作用就是我们自己可以取消同步   

  std::ios::sync_with_stdio(false);   
  注意:必须在任何io操作之前取消同步   
  函数返回前一次被调用的参数值,如果未被调用过,返回true,反映标准stream的默认的值

cin,cout速度慢,是因为先把要输出的东西存入缓冲区,再输出,导致效率降低,而这段ios_base::sync_with_stdio(false)可以来打消iostream的输入输出缓存,可以节省许多时间,使效率与scanf与printf相差无几
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: