区分 TCHAR 和 _TCHAR

发布于 2024-09-03 21:11:08 字数 130 浏览 4 评论 0原文

Windows 标头 tchar.h 中定义的两个符号 TCHAR_TCHAR 类型之间有何不同?举例说明。简要描述您在代码中使用 TCHAR 而不是 _TCHAR 的场景。 (10 分)

What are the various differences between the two symbols TCHAR and _TCHAR type defined in the Windows header tchar.h? Explain with examples. Briefly describe scenarios where you would use TCHAR as opposed to _TCHAR in your code. (10 marks)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

我不在是我 2024-09-10 21:11:08

除了 @RussC 所说的之外,TCHAR 由 Win32 API 使用,并且基于 UNICODE 定义,而 _TCHAR 由 Win32 API 使用。 C 运行时并基于 _UNICODE 定义。 UNICODE_UNICODE 通常一起定义/省略,使得 TCHAR_TCHAR 可以互换,但这不是必需的。它们在语义上是分开的,以供不同的框架使用。

In addition to what @RussC said, TCHAR is used by the Win32 API and is based on the UNICODE define, whereas _TCHAR is used by the C runtime and is based on the _UNICODE define instead. UNICODE and _UNICODE are usually defined/omitted together, making TCHAR and _TCHAR interchangable, but that is not a requirement. They are semantically separated for use by different frameworks.

等风来 2024-09-10 21:11:08

在这里找到了答案:

MSDN论坛>> Visual Studio 开发人员中心>> TCHAR 与 _TCHAR

TCHAR 和 _TCHAR 是相同的,尽管 TCHAR 没有
前导下划线,微软不允许将其保留为
关键字(想象一下,如果您有一个名为 TCHAR 的变量。想想会发生什么
发生)。因此,当语言扩展为 TCHAR 时,TCHAR 将不会被#define
已禁用 (/Za)。

TCHAR 在 winnt.h 中定义(当你 #include 时你会得到它
),以及 /Ze 下的 tchar.h。
_TCHAR 仅在 tchar.h 中可用(tchar.h 还#定义了 _TSCHAR 和 _TUCHAR)。这些是普通 TCHAR 数据类型的无符号/有符号变体。

Found your answer over here:

MSDN Forums >> Visual Studio Developer Center >> TCHAR vs _TCHAR

TCHAR and _TCHAR are identical, although since TCHAR doesn't have a
leading underscore, Microsoft aren't allowed to reserved it as a
keyword (imagine if you had a variable called TCHAR. Think what would
happen). Hence TCHAR will not be #defined when Language Extensions are
disabled (/Za).

TCHAR is defined in winnt.h (which you'll get when you #include
), and also tchar.h under /Ze.
_TCHAR is available only in tchar.h (which also #defines _TSCHAR and _TUCHAR). Those are unsigned/signed variants of the normal TCHAR data type.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文