首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >TCHAR和_TCHAR的区别

TCHAR和_TCHAR的区别
EN

Stack Overflow用户
提问于 2010-06-01 18:25:11
回答 2查看 4.7K关注 0票数 8

在Windows header tchar.h中定义的两个符号TCHAR_TCHAR类型之间有什么不同?用例子来解释。简要描述在代码中使用TCHAR而不是_TCHAR的场景。(10分)

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-06-01 18:31:55

在这里找到你的答案:

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

TCHAR和_TCHAR是相同的,尽管由于

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

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

票数 8
EN

Stack Overflow用户

发布于 2012-07-13 10:37:29

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

票数 10
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2948945

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档