Win32API 数据基本类型

时间:2022-06-14 06:13:57

一、基础类型
typedef unsigned long       DWORD;
typedef int                 BOOL;//TRUE FALSE
typedef unsigned char       BYTE;
typedef unsigned short      WORD;
typedef float               FLOAT;
typedef FLOAT*              PFLOAT;
typedef BOOL*    PBOOL;
typedef BOOL*               LPBOOL;
typedef BYTE*    PBYTE;
typedef BYTE*            LPBYTE;
typedef int*            PINT;
typedef int*            LPINT;
typedef WORD*               PWORD;
typedef WORD*            LPWORD;
typedef long*            LPLONG;
typedef DWORD*            PDWORD;
typedef DWORD*            LPDWORD;
typedef void*               LPVOID;
typedef CONST void*        LPCVOID;
typedef int                 INT;
typedef unsigned int        UINT;
typedef unsigned int*       PUINT;
#define VOID void
typedef char CHAR;
typedef short SHORT;
typedef long LONG;
typedef CHAR* PCHAR,  LPSTR; //可写的指针变量
typedef CONST CHAR *LPCSTR, *PCSTR;//只读的指针变量
....


二、结构体类型
POINT,SIZE,RECT
typedef struct tagPOINT
{
    LONG  x;
    LONG  y;
} POINT, *PPOINT, *LPPOINT;
typedef struct tagSIZE
{
    LONG        cx;
    LONG        cy;
} SIZE, *PSIZE, *LPSIZE;
typedef struct tagRECT
{
    LONG    left;
    LONG    top;
    LONG    right;
    LONG    bottom;
} RECT, *PRECT, *LPRECT;

三、句柄类型
可以操作某一类事物的指针变量(依托)
故意隐含了具体内容的一个结构体指针变量;
HWND:操作窗口的句柄
HICON:图标的句柄
HCURSOR:光标的句柄
HMENU:菜单的句柄
HDC:绘图句柄

四、TCHAR自适应类型相关的表达方法
a) 常见的TCHAR字符串类型:
typedef TCHAR* PTCHAR,  LPTSTR; //自适应的可写的指针变量
typedef CONST TCHAR *LPCTSTR, *PCTSTR; //自适应的只读的指针变量

?b)例如:TCHAR s[20];
LPTSTR p = s;

?c) TCHAR类型的常量表达法:
_TEXT(x) 
/*TCHAR的系统定义:
#ifdef _UNICODE
typedef  wchar_t TCHAR;
#else
typedef char TCHAR;
#endif*/
_TEXT的系统定义:
#define _T(x)       __T(x)
#define _TEXT(x)    __T(x)
#ifdef _UNICODE
#define _TEXT(x) L##x
#else
#define _TEXT(x) x
#endif

Win32API 数据基本类型