_T和L的区别

原文地址: http://blog.csdn.net/helinlin007/article/details/9187507
之前在程序中频繁的出现_T和_L的问题,貌似使用下没有明显区别,所以一直没有对两者进行区分。
     _T是将字符串转换为TCHAR类型,而_L是将字符串转换为WCHAR类型,两者的区别就在于TCHAR类型和WCHAR类型。
     先说WCHAR类型,宽字符类型。一般的字符类型为CHAR。而_T类型是微软为了能够保证WCHAR类型和CHAR类型两者在平台上能够通用设计出来的一个类型。
      当没有定义_UNICODE时,TCHAR就是普通的char类型,而当定义了UNICODE宏时,TCHAR就转为了WCHAR类型,即_L类型。
     因此,在使用 _T的时候,能够对两种字符根据情况进行切换。
      附注:
    宽字符和窄字符的区别。
     宽字符---一个字符占用两个字节,窄字符---一个字符占用一个字节。在显示上肯定存在一定的区别。

你可能感兴趣的:(_T和L的区别)