关于std::ios::sync_with_stdio(false);

转载 2016年08月29日 09:07:34

std::ios::sync_with_stdio(false);

这句语句是用来取消cin的同步,什么叫同步呢?就是iostream的缓冲跟stdio的同步。如果你已经在头文件上用了using namespace std;那么就可以去掉前面的std::了。取消后就cin就不能和scanf,sscanf, getchar, fgets之类同时用了,否则就可能会导致输出和预期的不一样。

#include <iostream>
#include <cstdio>
using namespace std;
int main()
{
    cout.sync_with_stdio(false);
    cout << "a\n";
    printf("b\n");
    cout << "c\n";
}
输出结果是
b
a
c

取消同步的目的,是为了让cin不超时,另外cout的时候尽量少用endl,换用”\n”,也是防止超时的方法。

当然,尽量用scanf,printf就不用考虑这种因为缓冲的超时了。

转自@flipped的博客

相关文章推荐

杭电ACM 找循环节 std::ios::sync_with_stdio(false);

Problem Description As a unicorn, the ability of using magic is the distinguishing feature am...

YT14-HDU-找循环节 (关于std::ios::sync_with_stdio(false);的作用和疑问)

Problem Description As a unicorn, the ability of using magic is the distinguishing feature am...

ios::sync_with_stdio(false);

原文:http://blog.csdn.net/yujuan_mao/article/details/8119529 在竞赛中,遇到大数据时,往往读文件成了程序运行速度的瓶颈,需要更快的读取方式...

ios::sync_with_stdio(false)详解

ACM 技巧

ios::sync_with_stdio()

函数ios::sync_with_stdio()继承自ios_base::sync_with_stdio()。语法如下:bool sync_with_stdio ( bool sync = true ...
  • hiawui
  • hiawui
  • 2011年05月25日 11:50
  • 1209

cin.tie与sync_with_stdio加速输入输出

我是怎么在不知道这一对函数的情况下活到今天的,以前碰到cin TLE的时候总是傻乎乎地改成scanf,甚至还相信过C++在IO方面效率低下的鬼话,殊不知这只是C++为了兼容C而采取的保守措施。 ti...

icould bookmarks sync problem with Internet Explorer

Problem: Icould cannot sync bookmarks with Internet Explorer OS: Windows 7 Icould Control Panel: 1...

How To Check Whether Physical Standby is in Sync with the Primary or Not?

The following tips will help you in monitoring sync between primary and standby databases. How To C...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:关于std::ios::sync_with_stdio(false);
举报原因:
原因补充:

(最多只允许输入30个字)