Unicodeでprintf

前置き

printfじゃなくて、wprintfを使うらしいです。
char なら printf。w_char なら wprintf。そして、TCHAR なら _tprintf

_tprintfを使う

前処理が必要みたいです。

#include <locale.h>
_tsetlocale( LC_ALL, _T("Japanese")); // これが前処理
//
// ・・・
// ・・・
// ・・・
//
_tprintf(_T("前処理をしないと、この日本語もうまく表示できない。\n"));

とにかく、これをやらないと、_tprintfはUnicodeの日本語が表示できないみたいです。
ローカル・・・じゃなくって、ロケールって何だろう・・・?
なんとなくわかりますけど、適当なことは書きません。とにかく、ロケールの設定をしましょう。

参考

参考
MSDN
MSDNの質問サイト
先達に感謝ですね。なんだか、質問サイトの投稿内容のまとめみたいな記事になってしまいました。