以下这些数据类型被Win32 API支持可以用于定义函数返回值、函数和消息的参数或结构体成员变量.他们定义了相关数据大小和位。
下面这个表包含以下数据类型: 字符串、整型数、布尔型、指针类型和句柄类型.这些字符串、整型数、布尔型是同C编绎器公用的.大多的指针类型名称前缀使用 P或LP.一个基本的Win32应用程序是使用一个句柄提交一个资源到内存中去的。
类型 | 定义 |
ABORTPROC | 指向一个应用程序定义的系统调用返回函数-当打印工作在假脱机期间被取消时的指针 |
ACMDRIVERENUMCB | 指向一个程序定义调用返回函数-被acmDriverEnum使用. |
ACMDRIVERPROC | 指向一个程序定义调用返回函数-被一个安装音频压缩管理驱动器(ACM) |
ACMFILTERCHOOSEHOOKPROC | 指向一个程序定义函数-钩住acmFilterChoosec对话框 |
ACMFILTERENUMCB | 指向一个程序定义调用返回函数被acmFilterEnum使用 |
ACMFILTERTAGENUMCB | 指向一个程序定义调用返回函数被acmFilterTabEnum使用 |
ACMFORMATCHOOSEHOOKPROC | 指向一个程序定义函数-钩住acmFormatChoose对话框 |
ACMFORMATENUMCB | 指向一个程序定义调用返回函数被acmFormatEnum 使用 |
ACMFORMATTAGENUMCB | 指向一个程序定义调用返回函数被acmFormatTagEnum 使用 |
APPLET_PROC | 指向一个类库定义调用返回函数-在控制面板应用程序中为空指针 |
ATOM | Atom (参考字符串在一个atom表中). |
BOOL | 布尔类型值(应为 TRUE 或 FALSE). |
BOOLEAN | 布尔类型值(应为 TRUE 或 FALSE).. |
BSTR | 32bit字符指针类型 |
BYTE | 字节类型 (8 bit). |
CALINFO_ENUMPROC | 指向一个程序定义调用返回函数收到一个日历信息字符串 |
CALLBACK | 调用返回函数的调用习惯. |
CHAR | 8-位 Windows (ANSI)字符串 |
COLORREF | 红, 绿, 蓝 (RGB)颜色值 (32位). |
CONST | 在运行期间保持不变的常量. |
CRITICAL_SECTION | 临界区对象. |
CTRYID | 国家标识符. |
DATEFMT_ENUMPROC | 指向一个程序定义调用返回函数收到一个日期格式的字符串 |
DESKTOPENUMPROC | 指向一个程序定义调用返回函数收到一个桌面名称 |
DLGPROC | 指向一个程序定义对话框返回程序 |
DRAWSTATEPROC | 指向一个程序定义调用返回函数着色一个复合图象 |
DWORD | 32-bit 无符号整数. |
EDITWORDBREAKPROC | 指向一个程序定义调用返回函数-当一个多行编辑控件需要文本换行时被操作系统调用. |
ENHMFENUMPROC | 指向一个程序定义调用返回函-列举增强图元文件记录 |
ENUMRESLANGPROC | 指向一个程序定义调用返回函数-列举资源语言 |
ENUMRESNAMEPROC | 指向一个程序定义调用返回函-列举一个资源名称 |
ENUMRESTYPEPROC | 指向一个程序定义调用返回函-列举一个资源类型 |
FARPROC | 指向一个程序定义调用返回函数. |
FLOAT | 浮点数类型. |
FILE_SEGMENT_ELEMENT | 64-bit 缓冲区指针 |
FONTENUMPROC | 指向一个程序定义调用返回函数-列举字体 |
GOBJENUMPROC | 指向一个程序定义调用返回函数列举图形设备对象 (GDI) |
GRAYSTRINGPROC | 指向一个程序定义调用返回函数-画灰色文本 |
HACCEL | 加速键表句柄. |
HANDLE | 对象句柄 |
HBITMAP | 位图句柄 |
HBRUSH | 画刷句柄 |
HCOLORSPACE | 逻辑颜色间隔句柄 |
HCONV | 对态数据交换会话句柄(DDE) |
HCONVLIST | DDE 会话列表句柄 |
HCURSOR | 光标句柄. |
HDC | 设备上下文句柄(DC). |
HDDEDATA | DDE数据句柄 |
HDESK | 桌面句柄. |
HDROP | 内部结构体句柄. |
HDWP | 缓期窗口位置结构体句柄 |
HENHMETAFILE | 增强图元文件句柄 |
HFILE | 打开一个文件句柄(不是创建文件的句柄) |
HFONT | 字体句柄 |
HGDIOBJ | GDI对象句柄 |
HGLOBAL | 全局大内存块句柄(连续内存). |
HHOOK | 钩子句柄 |
HICON | 图标句柄 |
HIMAGELIST | 图象列表对象句柄 |
HIMC | 输入上下文句柄 |
HINSTANCE | 实例句柄. |
HKEY | 注册键句柄 |
HKL | 键盘规格句柄 |
HLOCAL | 本地内存块句柄 |
HMENU | 菜单句柄 |
HMETAFILE | 图元文件句柄 |
HMODULE | 模块句柄 |
HMONITOR | 显示器句柄. |
HOOKPROC | 指向一个程序定义钩子函数被SetWindowsHookEx指定 |
HPALETTE | 调色板句柄. |
HPEN | 画笔句柄 |
HRGN | 区域句柄 |
HRSRC | 资源句柄 |
HSZ | DDE串句柄. |
HTREEITEM | 树视控件节点条目句柄 |
HWINSTA | 窗口位置句柄 |
HWND | 窗口句柄 |
INT | 有符号整数 |
IPADDR | IP 地址. 从一个IP地址转换到 "a.b.c.d" 形式 |
LANGID | 语言标识符. |
LCID | 现场标识符 |
LCSCSTYPE | 颜色间隔类型 |
LCSGAMUTMATCH | 全音阶匹配模式 |
LCTYPE | 现场消息类型 |
LINEDDAPROC | 指向调用返回函数-进度条相配. |
LOCALE_ENUMPROC | 指向一个程序定义调用返回函数-收到一个现场标识串 |
LONG | 32-bit 有符号长整数类型 |
LONGLONG | 64-bit 有符号长整数类型. |
LPARAM | 32-bit消息参数(传到一个程序或从函数中返回) |
LPBOOL | 指向BOOL值的指针 |
LPBYTE | 指向BYTE值的指针 |
LPCCHOOKPROC | 指向一个程序钩子函数被颜色公共对话框使用. |
LPCFHOOKPROC | 指向一个程序钩子函数被字体公共对话框使用. |
LPCOLORREF | 指向一个COLORREF值的指针 |
LPCRECT | 32bit不可变的矩形区域指针 |
LPCRITICAL_SECTION | 指向临界区的指针. |
LPCSTR | 指向一个非终止常量8-bitWindows(ANSI)类型的字符串指针 |
LPCTSTR | 若是UNICODE类型字符被定义同LPCWSTR,否则同LPCSTR |
LPCVOID | 指向一个任何类型的常量 |
LPCWSTR | 指向一个非终止常量16-bitWindows(ANSI)类型的字符串 |
LPDWORD | 指向DWORD类型值 |
LPFIBER_START_ROUTINE | 指向一个光纤函数. |
LPFRHOOKPROC | 指向一个程序钩子函数被查找/替换公共对话框使用 |
LPHANDLE | 指向一个HANDLE句柄的指针. |
LPHANDLER_FUNCTION | 指向一个控件句柄函数为Win32 服务器. |
LPINT | 指向一个INI类型值. |
LPLONG | 指向一个LONG类型值. |
LPOFNHOOKPROC | 指向一个程序钩子函数被打开和另存为公用对话框使用 |
LPPAGEPAINTHOOK | 指向一个程序定义调用返回函数被页面设置公用对话框使用 |
LPPAGESETUPHOOK | 指向一个程序定义调用返回函数被页面设置公用对话框使用 |
LPPRINTHOOKPROC | 指向一个程序钩子函数被页面设置公用对话框使用 |
LPPROGRESS_ROUTINE | 指向一个程序定义调用返回函数被CopyFileEx函数使用 |
LPSETUPHOOKPROC | 指向一个程序钩子函数被打印设置公用对话框使用 |
LPSTR | 指向一个无终止符的8-bit Windows (ANSI)特征的字符串指针 |
LPSTREAM | 指向一个流的指针 |
LPTHREAD_START_ROUTINE | 指向一个线程函数的指针 |
LPTSTR | 若UNICODE字符特征被定义同LPWSTR,否则同LPSTR. |
LPVOID | 指向任何类型值(32bit) |
LPWORD | 指向一个WORD类型值. |
LPWSTR | 指向一个无终止符的16-bit Windows (ANSI)特征的字符串 |
LRESULT | 32bit返回指针值从一个Win程序或回调函数中 |
LUID | 本地唯一的标识符 |
PBOOL | 指向一个BOOL类型值. |
PBOOLEAN | 指向一个BOOL类型值 |
PBYTE | 指向一个BYTE类型值. |
PCHAR | 指向一个CHAR类型值 |
PCRITICAL_SECTION | 指向一个CRITICAL_SECTION类型值. |
PCSTR | 指向一个无终止符的8-bit Windows (ANSI)特征的常量字符串 |
PCTSTR | 或是UNICODE类型字符被定义同PCWSTR,否则同PCSTR |
PCWCH | 指向一个常量WCHAR. |
PCWSTR | 指向一个无终止符16-bit Unicode特征的常量字符串 |
PDWORD | 指向一个DWORD类型值. |
PFLOAT | 指向一个FLOAT类型的值 |
PFNCALLBACK | 指向一个程序定义的回调函数-DDE处理指针 |
PHANDLE | 指向一个HANDLE句柄类型值. |
PHANDLER_ROUTINE | 指向一个控制台程序句柄 |
PHKEY | 指向一个HKEY类型值. |
PINT | 指向一个INT类型值 |
PLCID | 指向一个LCID类型值 |
PLONG | 指向一个LONG类型值 |
PLUID | 指向一个LUID类型值 |
PROPENUMPROC | 指向一个程序定义调用返回函数-列举窗口属性 |
PROPENUMPROCEX | 指向一个程序定义调用返回函数- 列举窗口属性 |
PSHORT | 指向一个SHORT类型值. |
PSTR | 指向一个无终止符的8-bit Windows (ANSI)特征字符串 |
PTBYTE | 指向一个TBYTE类型的值 |
PTCHAR | 指向一个TCHAR类型的值 |
PTIMERAPCROUTINE | 指向一定时器完成程序 |
PTSTR | 若是UNICODE被定义同PWSTR,否则同PSTR |
PUCHAR | 指向一个UCHAR类型的值. |
PUINT | 指向一个UINT类型的值 |
PULONG | 指向一个ULONG类型的值 |
PUSHORT | 指向一个UUSHORT类型的值. |
PVOID | 指向一个任何类型的值. |
PWCHAR | 指向一个UWCHAR类型的值 |
PWORD | 指向一个UCHAR类型的值.Pointer to a WORD. |
PWSTR | 指向一个无终止符的16-bit Unicode特征字符串 |
REGISTERWORDENUMPROC | 指向一个程序定义调用返回函数-处理注册字符串 |
REGSAM | 为注册键设立的安全数据通路 |
SC_HANDLE | 数据库管理控件句柄 |
SC_LOCK | 数据库服务管理控件加锁句柄. |
SENDASYNCPROC | 指向一个程序定义调用返回函数-当操作系统调用SendMessageCallbace时 |
SERVICE_STATUS_HANDLE | 服务器状态值句柄 |
SHORT | 短整数类型. |
TBYTE | 若是UNICODE字符特征被定义同WCHAR,否则同CHAR. |
TCHAR | 若是UNICODE字符特征被定义同WCHAR,否则同CHAR.. |
TIMEFMT_ENUMPROC | 指向一个程序定义调用返回函数-收到一个时间类型字符串 |
TIMERPROC | 指向一个程序定义时间返回函数 |
UCHAR | 无符号CHAR类型. |
UINT | 无符号INT类型. |
ULONG | 无符号LONG类型 |
ULONGLONG | 64-bit 无符号整型数 |
UNSIGNED | 无符号属性 |
USHORT | 无符号SHORT类型 |
VOID | 任何类型 |
WCHAR | 16-bit Unicode类型字符. |
WINAPI | Win32 API调用约定 |
WINSTAENUMPROC | 指向一个程序定义调用返回函数-收到一个窗口位置名称t |
WNDENUMPROC | 指向一个程序定义调用返回函数-列举窗口 |
WNDPROC | 指向一个windows程序指针 |
WORD | 16-bit 无符号整数 |
WPARAM | 32-bit 消息参数 |
YIELDPROC | 指向一个回调函数 |
其它可用数据类型
类型 | 位数 | 其它名称 | 数值范围 |
__int8 | 1 | char, | –128 到 127 |
__int16 | 2 | short, | –32,768 到 32,767 |
__int32 | 4 | signed, | –2,147,483,648到 2,147,483,647 |
__int64 | 8 | 无 | –9,223,372,036,854,775,808到 9,223,372,036,854,775,807 |
char | 1 | signed char | –128 到 127 |
unsigned char | 1 | 无 | 0 到 255 |
short | 2 | short int, | –32,768 到 32,767 |
unsigned short | 2 | unsigned short int | 0 到 65,535 |
long | 4 | long int, | –2,147,483,648 到 2,147,483,647 |
unsigned long | 4 | unsigned long int | 0 到 4,294,967,295 |
enum | * | 无 | 同 int |
float | 4 | 无 | 3.4E +/- 38 (7 digits) |
double | 8 | 无 | 1.7E +/- 308 (15 digits) |
long double | 10 | 无 | 1.2E +/- 4932 (19 digits) |