【C++】cin、cout的效率比scanf和printf低的解决方法

玩竞赛的同学应该发现了C++中直接调用cout、cin的效率要比printf和scanf的效率要低。

要解决这个问题,只需要在前面加上一句
std::ios::sync_with_stdio(false);
即可。

这是因为cout、cin要先把要输出的东西存入缓冲区,再输出,导致效率降低,而这段语句可以来打消iostream的输入输出缓存,可以节省时间,使效率与scanf与printf差不多。

但是cout、cin使用缓存区一定是有它的道理的,然而这我现在还不知道有啥道理。

 

posted @ 2015-05-18 21:33  狼.wrz  阅读(467)  评论(0编辑  收藏  举报