IT/ALGORITHM TIPS
입출력 빠르게 받기 (C, C++)
토미존스
2016. 10. 6. 13:47
반응형
보통 C, C++에서 입력 출력을 받을 때
printf, scanf보다 cout, cin이 편하기 때문에(개인적으로 그럴지도...)
처음에는 cout, cin을 사용하였으나
printf, scanf에 비해 cout, cin(endl)은 상당히 느리다.
이와 같은 현상에도 불구하고 cin, cout을 사용하고 싶다면
std::ios::sync_with_stdio(false)를 코드 초반부에 적어준 후에 cin, cout을 사용한다면 printf, scanf만큼 빠른 사용이 가능해진다.
cin, cout이 C 라이브러리에서 stdio buffer와 싱크를 맞추다 보니 느려진다고 한다.
특히 endl같은 경우 위의 싱크와 상관없이 느린 출력의 주범이 된다고 하여 요즘에는 주로 printf, scanf를 사용한다.
반응형