TCHAR赋值和比较的问题

dragon17162 2010-07-07 09:12:30
当编写符合ANSI和UNICODE的通用程序时,对于字符串,可以使用_T宏,如_T("ab")

但是对于单个字符,如TCHAR tch[32];

怎么编写符合ANSI和UNICODE的通用程序呢?

如何对tch[0]赋值,如何对tch[0]与某个字符'x'进行比较呢?

我这样写居然能通过编译:
赋值:tch[0] = _T('C');
比较:if( tch[0] == _T('C') ) ...

我感到纳闷的是,_T()宏不是针对字符串进行操作吗,对单个字符能根据是ANSI还是UNICODE转换为对应的编码吗?
...全文
401 点赞 收藏 3
写回复
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
qiangorqiang 2010-07-07
用_TEXT.
如:_TEXT('a');
回复
zwfgdlc 2010-07-07
 
_T or _TEXT

SBCS (_UNICODE, _MBCS not defined)
No effect (removed by preprocessor)

_MBCS defined
No effect (removed by preprocessor)

_UNICODE defined
L (converts following character or string to its Unicode counterpart)

单个字符或字符串都可以.
回复
dragon17162 2010-07-07
谢谢!
回复
发动态
发帖子
VC/MFC
创建于2007-09-28

1.5w+

社区成员

VC/MFC相关问题讨论
申请成为版主
社区公告
暂无公告