关于cin和cout标准I/O优化差异的问题



作为一个有竞争力的程序员,我一直使用ios::sync_with_stdio(0);来加速cincout。但我也见过其他人使用cin.sync_with_stdio(0);cout.sync_with_stdio(0);这样的优化。例如,后两者在以下网站中使用:https://usaco.guide/general/fast-io?lang=cpp.

我知道ios::sync_with_stdio(0);不同步iostream(cincout)从stdio(scanfprintf),所以为什么有人在做竞争性编程时只不同步输入cin或只同步输出cout(通常有大量的输入和输出)?

sync_with_stdio是一个静态方法,cin.sync_with_stdio(0)ios::sync_with_stdio(0);完全相同。

不完全像原来那样使用std::cin,但它是no-op

设置std::ios::sync_with_stdio(0)告诉c++ I/O流不必为跟上C风格的I/O例程而烦恼。这可以提高你的c++ I/O操作的效率,特别是如果你不需要混合c++流和C风格的函数。

最新更新