왜 printf는 개행 문자를 쓰지 않으면 자동으로 출력 되질 않나요? POSIX에서 그렇게 정해 놓은 건가요? printf()할 때마다 자동으로 출력하려면 어떻게 해야 되나요?
printf()
표준출력 stream은 bufferd I/O이기 때문에 버퍼가 꽉 차기 전이나 개행 문자를 만나기 전까지는 flush하지 않습니다.
flush
printf()할 때마다 자동으로 flush 하게 만들려면
fprintf(stderr, "바로바로 출력돼요");
printf("fflush가 데러 갈 거예요"); fflush(stdout);
setbuf(stdout, NULL);
프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.
댓글 입력