unicodeを扱う

Unicode は、通常 2 バイトの識別子(0xFFFE または 0xFEFF)で開始し、アプリケーションはこれを使用してそのファイルが Unicode を使用していることを判断します。

0xFFFEには Unicodeバイト順序反転バイト順序マーク(順序反転 BOM)
という意味がある

文字リテラルが UNICODE であることを示すのに L というキーワードを使用します。

たとえば、"*******" が UNICODE 文字列であることを示すには L"*******" というようにします。

また、UNICODE 文字を表すのにも L を用います。たとえば '?' を UNICODE で表すと L'?' となります。

ワード文字系の関数を使用する

strlen -> wcslen
strcmp -> wcscmp
FindFirstFile -> FindFirstFileW

などなど

ANSI←→Unicode変換

MultiByteToWideChar()とWideCharToMultiByte() APIを使います

setlocale()を忘れずに

setlocale( LC_ALL, "Japanese" ); と宣言しないとwprintf()で日本語が扱えません