Windows基本数据类型

来源:互联网 发布:敬汉卿 知乎 编辑:程序博客网 时间:2024/06/05 00:20

在前面示例和函数原型中,有一些“奇怪”的数据类型,如前面的HINSTANCE和LPSTR等,事实上,很多这样的数据类型只是一些基本数据类型的别名,以方便不同风格的程序员使用。表1.1列出了一些在Windows编程中常用的基本数据类型;表1.2列出了常用的预定义句柄,它们的类型均为void *,即一个32位指针。
表1.1  Windows编程中常用的基本数据类型
Windows所用的数据类型     对应的基本数据类型     说明

BOOL                                   bool                            布尔值                          

 BSTR                                  unsigned short *          32位字符指针

BYTE                                    unsigned char            8位无符号整数 

COLORREF                         unsigned long             用作颜色值的32位值
DWORD                               unsigned long             32位无符号整数,段地址和相关的偏移地址

LONG                                   long                            32位带符号整数
LPARAM                              long                            作为参数传递给窗口过程或回调函数的32位值

LPCSTR                               const char *               指向字符串常量的32位指针 

LPSTR                                  char *                        指向字符串的32位指针 

LPVOID                                void *                         指向未定义类型的32位指针
LRESULT                             long                           来自窗口过程或回调函数的32位返回值

UINT                                    unsigned int               32位无符号整数

WORD                                 unsigned short            16位无符号整数
WPARAM                            unsigned int               当做参数传递给窗口过程或回调函数的32位值  
 
 
说明: 

 这些基本数据类型都是用大写字符来表示的,以与一般C/C++基本数据类型相区别。 

若数据类型的前缀是P或LP,则表示该类型是一个指针或长指针数据类型;若数据类型的前缀是U,则表示是无符号数据类型。 

Windows还提供一些宏来处理上述基本数据类型。例如,LOBYTE和HIBYTE分别用来获取16位数值中的低位和高位字节,LOWORD和HIWORD分别用来获取32位数值中的低位字和高位字,MAKEWORD是将两个16位无符号值结合成一个32位无符号值。
表1.2  Windows编程中常用的句柄类型
句柄类型       说明
HBITMAP     保存位图信息的内存域的句柄

HBRUSH      画刷句柄  
HCURSOR   鼠标光标句柄 HDC 设备描述表句柄

HFONT         字体句柄

HICON          图标句柄
HINSTANCE 应用程序的实例句柄

HMENU        菜单句柄

HPALETTE   颜色调色板句柄
HPEN           在设备上画图时用于指明线型的笔的句柄

HWND          窗口句柄   
 


0 0
原创粉丝点击