WindowsAPI数据类型的命名规律
基本数据来袭包括:
BYTE 字节
CHAR 字符
WORD 单字
SHORT 短整型
INT 整型
指针的类型命名方式一般都在对象名前面加 LP 或者 P
/*字母P就是指针单词(Pointer)的缩写,比如指向WORD的指针类型,
通常就是"LPWORD" 和 "PWORD",
(其中LP和P是以前在16位操作系统中区分长指针和短指针,现在32位和64位系统中已经不再区分了)*/
各种句柄类型的命名方式一般都是再对象名前面加"H"
/*也就是 handle的缩写,比如位图(BITMAP)对应的句柄,类型为"HBITMAP"*/
无符号类型一般是以"U"开头,
/*是unsigned的缩写,比如"INT"是符号类型 "UINT" 是无符号类型*/
常量类型,一般是类型名中带C
(const)的缩写
STR 就是字符串的意思
根据这些命名规律以及自已的经验看到一些没见过的数据类型也就能知道它的代表的意思。
常用的WindowsAPI编程数据类型:
WORD:16位无符号整形数据
DWORD:32位无符号整型数据(DWORD32)
DWORD64:64位无符号整型数据
INT:32位有符号整型数据类型
INT_PTR:指向INT数据类型的指针类型
INT32:32位符号整型
INT64:64位符号整型
UINT:无符号INT
LONG:32位符号整型(LONG32)
ULONG:无符号LONG
LONGLONG:64位符号整型(LONG64)
SHORT:无符号短整型(16位)
LPARAM:消息的L参数
WPARAM:消息的W参数
HANDLE:对象的句柄,最基本的句柄类型
HICON:图标的句柄
HINSTANCE:程序实例的句柄
HKEY:注册表键的句柄
HMODULE:模块的句柄
HWND:窗口的句柄
BOOL:布尔型变量
BYTE:字节类型(8位)
CONST:常量
FLOAT:浮点数据类型
SIZE_T:表示内存大小,以字节为单位,其最大值是CPU最大寻址范围
VOID:无类型,相当于标准C语言中的void
WINAPI:Windows API的函数调用方式,常见于SDK头文件中对API函数的声明中,相当于_stdcall(更严格地说,这不是数据类型,而是一种函数调用约定
LPSTR:字符指针,也就是字符串变量
LPCSTR:字符串常量
LPCTSTR:根据环境配置,如果定义了UNICODE宏,则是LPCWSTR类型,否则则为LPCSTR类型
LPCWSTR:UNICODE字符串常量
LPDWORD:指向DWORD类型数据的指针
CHAR:8比特字节
TCHAR:如果定义了UNICODE,则为WCHAR,否则为CHAR
UCHAR:无符号CHAR
WCHAR:16位Unicode字符
常用WindowsAPI参数简写
b----------布尔
by----------BYTE
c----------chr或WCHAR TCHAR
n----------short
i----------int
x、y----------分别表示x坐标,y坐标
cx、cy----------分别表示x方向长度和y方向长度
b或f----------BOOL(int),f代表“flag”
w----------WORD(无符号short)
I----------LONG 长整数
dw----------DWORD 无符号长整数
fn----------function函数
s----------string字符电
sz----------以0字节结尾的字符串
h----------句柄
p----------指针
lpfn----------指向函数的长指针
cb----------字节数
lpsz----------指向以0结尾的字符串的长指针
g_----------全局变量
C_----------常量
m_----------类数据成员
S_----------静态变量
cS_----------类风格选项
CW_----------创建窗口选项
DT_----------绘制文本选项
IDI_----------图标ID号
IDC_----------光标ID号
MB_----------消息框选项(messagebox缩写)
SND_----------声音选项
WM_----------窗口消息(window message缩写)
wS_----------窗口风格(windows style缩写)
rc----------矩形(rect 缩写)