C標準入出力ライブラリ関数でテキストファイル出力するprint_file_text_cstdioを定義。
main.cで、
と書くと、

実行すればこうなって、test1.txtを開くと、

ロケール指定してないが、iso-2022-jp。

UTF-8ロケールを指定した場合は、UTF-8になってる。
ロケールの影響を受けるようにも見えるが、EUC-JPロケールを指定しても、UTF-8のままだった。
fwprintfなどのワイド文字関数で出力する場合は、指定ロケールの文字コードに変換してくれるが、fprntfなどのマルチバイト文字関数は変換してくれないのかな。