Windows で UNICODE 対応のプログラムを作るには、まず _UNICODE と UNICODE という定数を定義します。
#define _UNICODE #define UNICODE
次にソースコード中で文字列定数( ”~” の部分)を書いている部分を TEXT マクロでくくります。
printf(TEXT("Text is %s.\n"), TEXT("UNICODE"));
また、文字列を配列で格納する場合は char の代わりに TCHAR 型を使います。
TCHAR str[] = TEXT("String Buffer");
ちなみに Windows のエンコーディングは UTF-8 ではありません。 UTF-16 です。 UNICODE 文字列をファイルにダンプする際には注意が必要です。
Contributions