实际上就是宏函数,作用是取对应数据高/低位的
#define LOWORD(l) ((WORD)(((DWORD_PTR)(l)) & 0xffff))
#define HIWORD(l) ((WORD)((((DWORD_PTR)(l)) >> 16) & 0xffff))
#define LOBYTE(w) ((BYTE)(((DWORD_PTR)(w)) & 0xff))
#define HIBYTE(w) ((BYTE)((((DWORD_PTR)(w)) >> 8) & 0xff))
LOWORD 取32bits的低16bits
HIWORD 取32bits高16bits
LOBYTE 取16bits低8bits
HIBYTE 取16bits高8bits
补充:
typedef unsigned char BYTE;
typedef unsigned short WORD;
typedef unsigned long DWORD;