YAMAGUCHI::weblog

噛み付き地蔵に憧れて、この神の世界にやってきました。マドンナみたいな男の子、コッペです。

Printf.printfで表示されない?

はじめに

プログラムを実行している時に、各ステップでnotify的な表示をさせたい場合があるときに、Printf.printfを使ってたんですが、表示がうまく行われないことがあってなんでだろうと思ってたので @camlspotter に訊いたのでした。

Printf.printfにはflushが必要

知らなかった!これは落とし穴である。printf使うときはちゃんとflush (%!) してあげないとだめ。

Printf.printf "%d\n%!" 1;;

あるいは単に表示させるだけなら prerr_endline などを使えば自動でflushしてくれるから楽。