【发布时间】:2011-02-01 19:10:10
【问题描述】:
这是否意味着我正在为 x64 操作系统编写 64 位代码?
【问题讨论】:
标签: c++ visual-studio-2005 windows-xp x86
这是否意味着我正在为 x64 操作系统编写 64 位代码?
【问题讨论】:
标签: c++ visual-studio-2005 windows-xp x86
没有。这意味着 TCHAR 映射到 wchar_t 并且所有采用 TCHAR 或 LPTSTR 参数的函数都映射到它们的 Unicode 变体。例如CreateWindow 映射到CreateWindowW 而不是CreateWindowA。
这与 CPU 架构完全无关。您可以为 32 位或 64 位平台编写 Unicode 和多字节程序。
如果要为 x64 构建,则需要在配置管理器中添加另一个平台。这是来自 Microsoft 的 how-to。
【讨论】:
TCHAR 子系统旨在使char 和wchar_t 之间的切换几乎无缝。仍然可以在一个应用程序中以任意比例混合*A 和*W。
_UNICODE 宏,您的答案是正确的,但这听起来像是 IDE 中的设置,用于决定 源文件 存储在哪个字符集中。 ..(UTF-8 或一些本地语言环境/代码页)
没有。 Unicode 是一种字符编码,而不是 CPU 位数的度量。您可以不使用 Unicode 编写 64 位代码,也可以在使用 Unicode 的同时编写 32 位代码。两者都不需要另一个。如果需要,您可以同时使用两者。你也可以不使用。
【讨论】: