C++ 在竞争性编程中刷新输出意味着什么?

C++ 在竞争性编程中刷新输出意味着什么?,c++,flush,C++,Flush,我目前正在给codechef一个长时间的挑战,他们要求在打印每一行之后刷新输出。如何在cpp中使用flush?如果我不使用flush,这会如何影响时间限制? 目前我正在使用这个代码- cout<<z<<" "<<endl; cout.flush(); cout刷新使输出变慢,因为它不能缓冲两行并同时输出它们 但是,std::endl已经为您刷新了 您可以通过打印'\n'发送结束行而无需刷新 另一方面,您可能希望std::ios\u base::sync\u与

我目前正在给codechef一个长时间的挑战,他们要求在打印每一行之后刷新输出。如何在cpp中使用flush?如果我不使用flush,这会如何影响时间限制? 目前我正在使用这个代码-

cout<<z<<" "<<endl;
cout.flush();

cout刷新使输出变慢,因为它不能缓冲两行并同时输出它们

但是,
std::endl
已经为您刷新了

您可以通过打印
'\n'
发送结束行而无需刷新


另一方面,您可能希望
std::ios\u base::sync\u与_stdio(false)
如果不使用基于C的io,可以提高io速度。

刷新两次:
刷新可能会降低输出速度。这也可能对性能没有影响,因为接收系统的速度足以消耗无缓冲输出。@Caleth我想这是可能的,但电传打字机已经不多了。