win32编程:L,_T() ,TEXT和_TEXT
Posted 朱磊的计算机技术博客
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了win32编程:L,_T() ,TEXT和_TEXT相关的知识,希望对你有一定的参考价值。
L的使用:
在字符串前面的大写字母L,用来告诉编译器该字符串应该作为Unicode来编译。它用来将ASNI转换为Unicode,Unicode字符串中每个字符占16位(两个字节),而在ASNI中每个字符占用一个字节。
例如:
1 std::cout << strlen("Hello") << std::endl; 2 std::cout << wcslen(L"Hello") << std::endl;
_T的使用:
_T是一个宏,如果项目使用了Unicode字符集(定义了UNICODE宏),则自动在字符串前面加上L,否则字符串不变。Visual C++里边定义字符串的时候,用_T来保证兼容性。VC支持ascii和unicode两种字符类型,用_T可以保证从ascii编码类型转换到unicode编码类型的时候,程序不需要修改。
_TEXT、TEXT的使用:
tchar.h是运行时的头文件,_T、_TEXT 根据_UNICODE来确定宏 ,如下:
1 #define _T(x) __T(x) 2 #define _TEXT(x) __T(x)
winnt.h是Win的头文件根据,TEXT 根据UNICODE 来确定宏,如下:
1 #endif /* UNICODE */ // r_winnt 2 #define TEXT(quote) __TEXT(quote) // r_winnt
以上是关于win32编程:L,_T() ,TEXT和_TEXT的主要内容,如果未能解决你的问题,请参考以下文章
关于 char wchar_t TCHAR _T() ||| 宏 _T TEXT _TEXT L
text HWI EXT Win32_EncryptableVolume_Ext.mof