프로그래밍/c++
iostream cerr, clog의 사용
제페
2016. 4. 5. 20:32
반응형
cerr와 clog는 기본적으로, 콘솔로 출력해 이게 cout이랑 뭐가 다른 거야?! 라고 하겠지만
스트림버퍼 설정으로 손 쉽게 에러와, 로그를 구분해 출력할 수 있도록 한다.
1 2 3 4 | std::ofstream outfile("err.txt"); // set output stream std::cerr.rdbuf(outfile); | cs |
이렇게 rdbuf를 재설정 하면, cerr로 출력한 문자들은 모두 outfile에 쓰여지게 된다!
1 2 3 | std::cerr << "error!!"; | cs |
보면 알다시피, cout, cerr, clog는 사용법이 모두 같다.
그럼 왜 구분을 해놨을까? 단순히 언어 차원에서 이건 이건 출력, 이건 에러야, 이건 로그 같이 구분하기 위함이다.
저러한 구분이 없다면 out, err, log 별 구분 처리를 위해 사용자가 직접 작성을 해야할 것이다.
참고
http://gpgstudy.com/forum/viewtopic.php?p=114620
https://algospot.com/forum/read/2496/
반응형