/ / UNICODEと_UNICODEの違い[重複] - c、winapi、unicode

ユニコードと_UNICODEの違い[重複] - c、winapi、unicode

可能な重複:
なぜUNICODEと_UNICODEの両方?

UNICODEととの違いは何ですか?_UNICODE? Unicode文字を使用するようにプログラムをコンパイルする場合、両方を定義する必要がありますか? Unicode文字を使用するために2つの異なる識別子がある理由はありますか?

回答:

回答№1は4

レイモンドチェン 答えがあります。

アンダースコアのない普通のバージョンは影響しますWindowsヘッダーファイルがデフォルトとして扱う文字セット。そのため、UNICODEを定義すると、GetWindowTextは、たとえばGetWindowTextAではなくGetWindowTextWにマップされます。同様に、TEXTマクロは "..."ではなくL "..."にマッピングされます。

下線付きのバージョンは、Cランタイムヘッダファイルがデフォルトとして扱う文字セット。そのため、_UNICODEを定義すると、_tcslenはstrlenではなくwcslenにマップされます。同様に、_TEXTマクロは "..."ではなくL "..."にマッピングされます。