分类 | 范围 | 字节 | 备注 | |||
简单类型 | 序数 | 整数 | Integer | -2147483648 .. 2147483647 | 4 | 有符号32位 |
Cardinal | 0 .. 4294967295 | 4 | 无符号32位 | |||
Shortint | -128 .. 127 | 1 | 有符号8位 | |||
Smallint | -32768 .. 32767 | 2 | 有符号16位 | |||
Longint | -2147483648 .. 2147483647 | 4 | 有符号32位 | |||
Int64 | -263 .. 263 | 8 | 有符号64位 | |||
Byte | 0 .. 255 | 1 | 无符号8位 | |||
Word | 0 .. 65535 | 2 | 无符号16位 | |||
Longword | 0 .. 4294967295 | 4 | 无符号32位 | |||
字符 | AnsiChar(Char) | ANSI字符集 | 8位 | |||
WideChar | Unicode字符集 | 16位 | ||||
布尔 | Boolean | False < True Ord(False) = 0 Ord(True) = 1 Succ(False) = True Pred(True) = False | 1 | |||
ByteBool | False <> True Ord(False) = 0 Ord(True) <> 0 Succ(False) = True Pred(False) = True | 1 | ||||
WordBool | 2 | |||||
LongBool | 4 | |||||
枚举 | ||||||
子界 | ||||||
实数 | Real | 5.0×10-324 .. 1.7×10308 | 8 | [精度]15..16 | ||
Real48 | 2.9×10-39 .. 1.7×1038 | 6 | [精度]11..12; 向后兼容 | |||
Single | 1.5×10-45 .. 3.4×1038 | 4 | [精度]7..8 | |||
Double | 5.0×10-324 .. 1.7×10308 | 8 | [精度]15..16 | |||
Extended | 3.6×10-4951 .. 1.1×104932 | 10 | [精度]19..20 | |||
Comp | -263 + 1 .. 263 - 1 | 8 | [精度]19..20 | |||
Currency | -922337203685477.5808 .. 922337203685477.5807 | 8 | [精度]19..20 | |||
字符串 | ShortString | 255个字符 | 2..256B | 向后兼容 | ||
AnsiString | 大约 231 个字符 | 4B..2GB | 8位(ANSI)字符 | |||
WideString | 大约 230 个字符 | 4B..2GB | 多用户服务和 多语言应用程序; 和com定义的BSTR兼容 | |||
其他 | String String[0..255] PChar PAnsiString PWideString | |||||
结构类型 | 集合 | Set | 最多256个元素[0..255] | |||
数组 | 静态数组 | |||||
动态数组 | ||||||
记录 | Record | |||||
文件 | File | |||||
类 | Class | |||||
类引用 | Class reference | |||||
接口 | Interface | |||||
指针类型 | 无类型指针 | Pointer | ||||
有类型指针 | 预定义类型指针 | PAnsiString PString PByteArray PCurrency PDouble PExtended PSingle PInteger POleVariant PShortString PTextBuf PVarRec PVariant PWideString PWordArray | ||||
过程类型 | 程序过程类型 | Procedural | ||||
对象过程类型 | Procedural | |||||
变体类型 | Variant | |||||
OleVariant |
Windows API 的数据类型与 Delphi 数据类型对照表
Windows 数据类型 | Delphi 数据类型 | 描述 |
LPSTR | PAnsiChar | 字符串指针 |
LPCSTR | PAnsiChar | 字符串指针 |
DWORD | LongWord | 整数 |
BOOL | LongBool | 布尔型 |
PBOOL | ^BOOL | 指向布尔值的指针 |
PByte | ^Byte | 指向字节值的指针 |
PINT | ^Integer | 指向整数值的指针 |
PSingle | ^Single | 指向单精度浮点值的指针 |
PWORD | ^Word | 指向16位值的指针 |
PDWORD | ^DWORD | 指向32位值的指针 |
LPDWORD | PDWORD | 指向32位值的指针 |
UCHAR | Byte | 8位值(可用来表示字符) |
PUCHAR | ^Byte | 指向8位值的指针 |
SHORT | Smallint | 带符号16位整数 |
UINT | LongWord | 无符号32位整数 |
PUINT | ^UINT | 指向无符号32位整数的指针 |
ULONG | Cardinal | 无符号32位整数 |
PULONG | ^ULONG | 指向无符号32位整数的指针 |
PLongint | ^Longint | 指向32位值的指针 |
PInteger | ^Integer | 指向32位值的指针 |
PSmallInt | ^Smallint | 指向16位值的指针 |
PDouble | ^Double | 指向双精度浮点值的指针 |
LCID | DWORD | 局部标识符 |
LANGID | Word | 语言标识符 |
THandle | LongWord | 对象句柄 |
PHandle | ^THandle | 指向句柄的指针 |
WOARAM | Longint | 32位的消息参数 |
LPARAM | Longint | 32位的消息参数 |
LRESULT | Longint | 32位函数返回值 |
HWND | LongWord | 窗口句柄 |
HHOOK | LongWord | Windows 钩子句柄 |
ATOM | Word | 局部或全局原子表中的字符串索引 |
HGLOBAL | THandle | 全局动态内存句柄 |
HLOCAL | THandle | 局部动态内存句柄(32位下与 HGLOBAL 没有区别) |
FARPROC | Pointer | 指向过程的指针,通常在需要回调函数的函数中作为参数类型 |
HGDIOBJ | LongWord | GDI对象句柄 |
HBITMAP | LongWord | Windows 位图对象句柄 |
HBRUSH | LongWord | Windows 画刷对象句柄 |
HDC | LongWord | 设备环境句柄 |
HENHMETAFILE | LongWord | Windows 增强图元文件对象句柄 |
HFONT | LongWord | Windows 逻辑字体对象句柄 |
HICON | LongWord | Windows 图标对象句柄 |
HMENU | LongWord | Windows 菜单对象句柄 |
HMETAFILE | LongWord | Windows 图元文件对象句柄 |
HINST | THandle | 实例(instance)对象句柄 |
HMODULE | HINST | 模块句柄 |
HPALETTE | LongWord | Windows 调色板对象句柄 |
HPEN | LongWord | Windows 画笔对象句柄 |
HRGN | LongWord | Windows 区域对象句柄 |
HRSRC | THandle | Windows 资源对象句柄 |
HKL | LongWord | Windows 键盘布局句柄 |
HFILE | LongWord | 已打开文件的句柄 |
HCURSOR | HICON | Windows 鼠标光标对象句柄 |
COLORREF | DWORD | Windows 颜色索引值句柄,包含红、绿、蓝三个分量 |