您的位置:首页 > 编程语言

windows编程中的单字符和宽字符使用 总结

2009-08-01 16:34 453 查看
    最近在工作中对单字符和宽字符的使用有点模糊不清了,所以周末把最常用的总结了下。

 

    1. 单字符 char

        使用  char *p="Hello" ;

 

        宽字符  wchar_t

        使用  wchar_t  *wp=L"Hello“;   

        注意使用wchar_t 的时候字符串前面要加上L

 

 

   2.如果包含了头文件#include<TCHAR.H>,那么可以用TCHAR,_T,_TEXT来定义统一的字符串

     

      使用  TCHAR  *tp=_T("Hello");

       或者 TCHAR  *tp=_TEXT("Hello");

 

 

       如果#define  _UNICODE  ,那么 tp表示一个wchar_t *,否则tp表示char*

    

   3.  如果包含了头文件#include<WINNT.H>或者#include<WINDEF.H>或者

        #include<WINDOWS.H>,那么

 

        CHAR 等价于 char

        WCHAR 等价于 wchar_t

        TCHAR  跟是否 #define  UNICODE  有关,如果定义了UNICODE  ,那么

        TCHAR  等价于 WCHAR 也就是wchar_t,否则

        TCHAR  等价于 CHAR  ,也就是char

       

 

 

        这时候定义统一的字符串可以这么定义:

        TCHAR   *tp=TEXT("Hello");

 

        如果#define  UNICODE  ,那么 tp表示一个wchar_t *,否则tp表示char*

 

 

 

   4.  关于LPSTR,LPWSTR,LPTSTR 的定义

       这几个也是在WINNT.H里面定义的

 

       LPSTR 是指向char 的指针,即 char *

       LPWSTR  是指向 wchar_t的指针,即 wchar_t *

 

       如果 #define  UNICODE  ,那么

       LPTSTR    即 wchar_t *,否则

       LPTSTR    即 char*

 

 

 

 

      如果这三个中间加有字符"C",表示常量字符串。

 

 

      

 

 

 

 

 

 

 

 

 

 

 

 

 

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  windows 编程 工作 c