Windows基本数据类型

在前面示例和函数原型中,有一些“奇怪”的数据类型,如前面的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          窗口句柄   
 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值