Cin-Cout vs Scanf-Printf

Regular competitive programmers face common challenge when input is large and the task of reading such an input from stdin might prove to be a bottleneck. Such problem is accompanied with “Warning: large I/O data”.

Let us create a dummy input file containing a line with 16 bytes followed by a newline and having 1000000 such lines, making a file of 17MB should be good enough.

// Creating a dummy file of size 17 MB to compare 
// performance of scanf() and cin()
$ yes 1111111111111111 | head -1000000 > tmp/dummy

Let us compare the time taken to read the file from stdin (get the file from disk to stdin using redirection) by using scanf() versus cin.

// Filename : cin_test.cc to test the 
// We redirect above created temp file 
// of 17 MB to stdin when this program 
// is run.
#include<iostream>
using namespace std;
  
int main()
{
    char buffer[256];
    while (cin >> buffer)
    {
    }
    return 0;
}
0
正式评论
Dear customer,
Please be aware that the AppCode community forum was deprecated and closed for comments on March 31, 2020.
To see further details please follow this link: https://intellij-support.jetbrains.com/hc/en-us/community/posts/360007631480-The-AppCode-Community-Forum-Is-Deprecated
Thank you for your understanding.
JetBrains

请先登录再写评论。