关于TCHAR与tchar.h
来源:互联网 发布:手机电吉他软件 编辑:程序博客网 时间:2024/05/12 11:42
因为VS里的很多字符编码都是采用unicode来编码的,为了兼容字符集。微软开发了tchar包,tchar 在unicode下是wchar(双字符),而普通是char。
因为C++支持两种字符串,即常规的ANSI编码和Unicode编码,这样对应的就有了两套字符串字符串处理函数,比如:strlen和wcslen,分别用于处理两种字符串 。微软将这两套字符集及其操作进行了统一,通过条件编译(通过_UNICODE和UNICODE宏)控制实际使用的字符集,这样就有了_T("")这样的字符串,对应的就有了_tcslen这样的函数 。
为了存储这样的通用字符,就有了TCHAR: 当没有定义_UNICODE宏时,TCHAR = char,_tcslen = strlen;当定义了_UNICODE宏时,TCHAR =wchar_t, _tcslen = wcslen 。当我们定义了UNICODE宏,就相当于告诉了编译器:我准备采用UNICODE版本。这个时候,TCHAR就会变成了wchar_t。而未定义UNICODE宏时,TCHAR变成了unsigned char 。这样就可以很好的切换宽窄字符集。tchar可用于双字节字符串,使程序可以用于中日韩等国 语言文字处理、显示。使编程方法简化。
因为C++支持两种字符串,即常规的ANSI编码和Unicode编码,这样对应的就有了两套字符串字符串处理函数,比如:strlen和wcslen,分别用于处理两种字符串 。微软将这两套字符集及其操作进行了统一,通过条件编译(通过_UNICODE和UNICODE宏)控制实际使用的字符集,这样就有了_T("")这样的字符串,对应的就有了_tcslen这样的函数 。
为了存储这样的通用字符,就有了TCHAR: 当没有定义_UNICODE宏时,TCHAR = char,_tcslen = strlen;当定义了_UNICODE宏时,TCHAR =wchar_t, _tcslen = wcslen 。当我们定义了UNICODE宏,就相当于告诉了编译器:我准备采用UNICODE版本。这个时候,TCHAR就会变成了wchar_t。而未定义UNICODE宏时,TCHAR变成了unsigned char 。这样就可以很好的切换宽窄字符集。tchar可用于双字节字符串,使程序可以用于中日韩等国 语言文字处理、显示。使编程方法简化。
- 关于TCHAR与tchar.h
- 关于 tchar.h
- Tchar.h
- Tchar.h
- tchar.h
- 关于TCHAR
- TCHAR
- TCHAR
- TCHAR
- TCHAR
- TCHAR
- TCHAR
- TCHAR
- TCHAR
- TCHAR
- TCHAR
- tchar.h及TCHAR数据类型介绍
- tchar.h及TCHAR数据类型介绍
- 堆 和 栈的 区别(经典)——一篇理解堆和栈区别的好文章
- 华容道(传统智力游戏)
- Java-华容道
- http://bbs.csdn.net/topics/390626193的最后解决办法。
- HDU 3750(2013.10.27周赛)
- 关于TCHAR与tchar.h
- 一步一步在Linux上安装Oracle 11gR2 RAC (1)
- 不用再期待别人的认可
- 银行家算法
- 火狐打不开12306购票网站解决办法
- [unity3d]从服务器端获取资源动态加载到场景
- 第九周上机实践------个人所得税
- 数据结构线性表之顺序表解说
- UITableView截取整张表格。