代码改变世界

VC中的数据类型

2009-12-18 10:06  Kevin-wang  阅读(350)  评论(0编辑  收藏  举报

标识符 实际类型 意义 
CHAR char 8位Windows(ANSI)字符。 
CCHAR char 8位Windows(ANSI)字符。 
PSZ char* 一个以"NULL"结束的Windows字符串的指针 
PCHAR CHAR* 一个CHAR型指针 
PSTR CHAR* 一个以"NULL"结尾的8位Windows(ANSI)字符串指针 
LPSTR CHAR* 一个以"NULL"结尾的8位WINDOWS(ANSI)字符串指针 
NPSTR CHAR* 一个以"NULL"结尾的8位WINDOWS(ANSI)字符串指针 
PCSTR CONST CHAR* 一个以"NULL"结尾的8位WINDOWS(ANSI)字符串常量指针 
LPCSTR CONST CHAR* 一个以"NULL"结尾的8位WINDOWS(ANSI)字符串常量指针 
WCHAR wchar_t 16位Unicode字符 
PWCH WCHAR* 一个WCHAR型指针 
PWCHAR WCHAR* 一个WCHAR型指针 
PWSTR WCHAR* 一个以"NULL"结尾的16位Unicode字符串指针 
LPWSTR WCHAR FAR* 一个以"NULL"结尾的16位Unicode字符串指针 
NWPSTR WCHAR* 一个以"NULL"结尾的16位Unicode字符串指针 
PCWCH CONST WCHAR* 一个WCHAR型常量指针 
LPCWCH CONST WCHAR FAR* 一个WCHAR型常量指针 
PCWSTR CONST WCHAR* 一个以"NULL"结束的16位Unicode字符串常量指针 
LPCWSTR CONST WCHAR FAR* 一个以"NULL"结尾的16位Unicode字符串常量指针 
TCHAR WCHAR(或char) 兼容型字符(Unicode中为WCHAR型,Windows中为CHAR型) 
PTCHAR WCHAR*(或char) 一个TCHAR型指针 
PTCH LPWSTR(或LPSTR) Unicode中为LPWSTR型,Windows中为LPSTR型 
LPTCH LPWSTR(或LPSTR) Unicode中为LPWSTR型,Windows中为LPSTR型 
PTSTR LPWSTR(或LPSTR) Unicode中为LPWSTR型,Windows中为LPSTR型 
LPTSTR LPWSTR(或LPSTR) Unicode中为LPWSTR型,Windows中为LPSTR型 
PCTSTR PCWSTR(或PCSTR) Unicode中为PCWSTR型,Windows中为PCSTR型 
LPCTSTR LPCWSTR(或LPCSTR) Unicode中为LPCWSTR型,Windows中为LPCSTR型 
UCHAR unsigned char 无符号字符型 
PUCHAR UCHAR* 一个UCHAR型指针 
BSTR OLECHAR* 32位字符指针(不推荐使用) 
OLECHAR wchar_t Unicode字符类型(用于对象链接与嵌入的数据类型,如嵌入Word文档) 
LPOLESTR OLECHAR* 一个OLECHAR型指针 
LPCOLESTR const OLECHAR* 指向OLECHAR类型的字符串常量指针 
---------------------------------------------------

数值类:
---------------------------------------------------
标识符 实际类型 意义 
BYTE unsigned char 8位无符号整数 
PBYTE BYTE near* 一个BYTE型指针 
LPBYTE BYTE far* 一个BYTE型指针 
TBYTE WCHAR(或unsigned char) Unicode中为WCHAR型,Windows中为unsigned char型 
PTBYTE WCHAR*(或unsigned char*) 一个TBYTE型指针 
BOOL int 布尔变量,其值为(TRUE或FALSE) 
PBOOL BOOL near* 一个BOOL型指针 
LPBOOL BOOL far* 一个BOOL型指针 
BOOLEAN BYTE 布尔变量,其值为(TRUE或FALSE) 
PBOOLEAN BOOLEAN* 一个BOOLEAN型指针 
SHORT short 16位短整数(有符号) 
PSHORT SHORT* 一个SHORT型指针 
USHORT unsigned short 无符号短整型 
PUSHORT USHORT* 一个USHORT型指针 
INT int 32位符号整数 
INT32  32位符号整数 
INT64  64位符号整数 
INT_PTR  Signed integral type for pointer precision.Use when casting a pointer to an integer to perform pointer arithmetic. 
PINT INT near* 一个INT型指针 
LPINT INT far* 一个INT型指针 
UINT unsigned int 无符号的整型 
UINT32  无符号的INT32型 
UINT64  无符号的INT64型 
UINT_PTR  无符号的INT_PTR型 
PUINT UINT* 一个UINT型指针 
LONG long 32位符号整数 
LONG32  32位符号整数 
LONG64  64位符号整数 
LONGLONG __int64(或double) 64位符号整数 
LONG_PTR  Signed long type for pointer precision.Use when casting a pointer to a long to perform pointer arithmetic. 
PLONG LONG near* 一个LONG型指针 
LPLONG LONG far* 一个LONG型指针 
PLONGLONG LONGLONG* 一个LONGLONG型指针 
ULONG unsigned long 无符号的LONG型 
ULONG32  无符号的LONG32型 
ULONG64  无符号的LONG64型 
ULONGLONG unsigned __int64(或double) 64位无符号整型 
ULONG_PTR  无符号的LONG_PTR型 
PULONG ULONG* 一个ULONG型指针 
PULONGLONG ULONGLONG* 一个ULONGLONG型指针 
WORD unsigned short 16位无符号整型 
PWORD WORD near* 一个WORD型指针 
LPWORD WORD far* 一个WORD型指针 
DWORD unsigned long 32位无符号整数 
DWORD32  32位无符号整型 
DWORD64  64位无符号整型 
DWORD_PTR  Unsigned long type for pointer precision.Use when casting a pointer to a long type to perform pointer arithmetic.(Also commonly used for general 32-bit parameters that have been extended to 64 bits in 64-bit Windows. 
PDWORD DWORD near* 一个DWORD型指针 
LPDWORD DWORD far* 一个DWORD型指针 
FLOAT float 浮点变量 
PFLOAT FLOAT near* 一个FLOAT型指针 
---------------------------------------------------

句柄类:
---------------------------------------------------
标识符 实际类型 意义 
HANDLE void* 对象句柄(32位无符号整数) 
PHANDLE HANDLE NEAR* 一个HANDLE型指针 
SPHANDLE HANDLE NEAR* 一个HANDLE型指针 
LPHANDLE HANDLE FAR* 一个HANDLE型指针 
GLOBALHANDLE HANDLE 一个全局句柄 
HDC HANDLE 设备描述表(DC)句柄 
HBITMAP HANDLE 位图句柄 
HBRUSH HANDLE 画刷句柄 
HICON HANDLE 图标句柄 
HCURSOR HICON 光标句柄 
HPALETTE HANDLE 调色板句柄 
HPEN HANDLE 画笔句柄 
HCONV  动态数据交换(DDE)会话句柄 
HACCEL HANDLE 加速键表句柄 
HCONVLIST  DDE会话列表句柄 
HDDEDATA  DDE数据句柄 
HDESK HANDLE 桌面句柄 
HDLG    对话框句柄 
HDROP    一个internal drop structure句柄。 
HDWP    延期窗口位置结构句柄 
HENHMETAFILE HANDLE 增强图元文件句柄 
HFILE int或short 文件句柄,用于函数OpenFile,不是CreateFile 
HFONT HANDLE 字体句柄 
HGDIOBJ HANDLE(void NEAR*) GDI对象句柄 
HGLOBAL HANDLE 全局内存块句柄 
HHOOK HANDLE 钩子句柄 
HIMAGELIST    映像列表句柄 
HIMC    输入描述表句柄 
HINSTANCE HANDLE 实例句柄(32位无符号整数) 
HKEY    登记关键字句柄 
HKL HANDLE Input locale identifier. 
HLOCAL HANDLE 局部内存块句柄 
HMEMU    菜单句柄 
HMETAFILE HANDLE 图元文件句柄 
HMIDIIN    MIDI输入文件句柄(MIDI:乐器的数字化接口) 
HMIDIOUT    MIDI输出文件句柄(MIDI:乐器的数字化接口) 
HMMIO    文件句柄 
HMODULE HINSTANCE 一个程序模块的句柄。其值为该模块的启始地址。 
HMONITOR HANDLE 显示监视器句柄 
HRGN HANDLE 域句柄 
HRSRC HANDLE 资源句柄 
HSZ  DDE字符串句柄 
HWAVEIN  波形输入文件句柄 
HWAVEOUT  波形输出文件句柄 
LPHWAVEIN  一个HWAVEIN型指针 
LPHWAVEOUT  一个WAVEOUT型指针 
HWINSTA HANDLE 工作站句柄 
HWND HANDLE 窗口句柄(32位无符号整数) 
LOCALHANDLE HANDLE 
SC_HANDLE   服务控制管理数据库(service control manager database)句柄 
SC_LOCK   绑定服务控制管理数据库(service control manager database)句柄 
SERVICE_STATUS_HANDLE   服务状态值句柄 
---------------------------------------------------

函数指针类:
---------------------------------------------------
标识符 意义 
MFENUMPROC 该回调函数枚举元文件记录 
ENUMFENUMPROC 该回调函数枚举增强的元文件记录 
ENUMRESLANGPROC 该回调函数枚举资源语言。 
ENUMRESNAMEPROC 该回调函数枚举资源名称。 
ENUMRESTYPEPROC 该回调函数枚举资源类型。 
FONTENUMPROC 该回调函数枚举字体 
GOBJENUMPROC 该回调函数枚举图形设备接口(GDI)对象 
HOOKPROC 钩子过程函数指针 
LPCCHOOKPROC 指向一个应用程序定义的钩子函数的指针 
LPCFHOOKPROC 指向一个应用程序定义的钩子函数的指针 
LPFRHOOKPROC 指向一个应用程序定义的钩子函数的指针 
LPOFNHOOKPROC 指向一个应用程序定义的钩子函数的指针 
LPPRINTHOOKPROC 指向一个应用程序定义的钩子函数的指针 
LPSETUPHOOKPROC 指向一个应用程序定义的钩子函数的指针 
FARPROC 指向一个长回调函数的指针 
DLGPROC 指向一个对话框过程的指针 
LINEDDAPROC 指向一个回调函数的指针,该回调函数处理行坐标 
LOHANDLER_FUNCTION 指向一个处理程序函数的指针 
PROPENUMPROC 指向一个应用程序定义的回调函数的指针,该回调函数枚举窗口特征 
PFNCALLBACK 指向一个回调函数的指针 
PHANDLER_ROUTINE 指向一个处理程序的指针 
TIMERPROC 指向一个应用程序定义的定时器回调函数的指针 
WNDENUMPROC 指向一个应用程序定义的回调函数的指针,该回调函数枚举窗口 
WNDPROC 32-bit,指向一个应用程序定义的窗口过程的指针 
YIELDPROC 指向一个输出回调函数的指针 
---------------------------------------------------

其他类:
---------------------------------------------------
标识符 实际类型 意义 
ATOM WORD 原子(原子表中的一个字符串的参考) 
CALLBACK  回调函数的定义标识 
LPRESULT  作为窗口函数或callback函数的返回值(32位数值) 
LRESULT LONG 消息处理的符号结果 
COLORREF DWORD 由红、绿、蓝(RGB)组成的彩色值(32位数值) 
WINAPI APIENTRY 系统函数调用协议标识。 
WPARAM UINT 消息参数 
LPARAM LONG 消息参数,32-bit数值,作为窗口函数或callback函数的一个参数 
CRITICAL_SECTION  临界段对象。 
LPCRITICAL_SECTION  一个临界段对象的指针(CRITICAL_SECTION) 
CTRYID  国名标识符。 
FMORDER  32位字体映射值的数组 
LANGID WORD 语言标识符 
LCID DWORD 所在国标识符 
PLCID PDWORD 一个LCID型指针 
LCTYPE  所在国类型 
LPCOLORREF DWORD* 一个COLORREF型指针 
MCIDEVICEID  媒体控制接口(MCI)设备标识符 
MMRESULT  多媒体消息的处理结果 
PCRITICAL_SECTION  指向一个临界段对象(CRITICAL_SECTION)的指针 
PHKEY  一个HKEY型指针 
POINTER_32  32位指针。在32位系统中,是一个普通指针。在64位系统中,是一个去除了高字节的64位指针。 
POINTER_64  64位指针。在64位系统中,是一个普通指针。在32位系统中,是被扩展了符号的32位指针。 
PSID PVOID 指向一个加密标识符(SID)的指针 
REGSAM  登记关键字的加密掩码 
SIZE_T unsigned int The maximum number of bytes to which a pointer can point.Use for a count that must span the full range of a pointer. 
SSIZE_T  带符号的SIZE_T型 
UNSIGNED  Unsigned attribute. 
---------------------------------------------------

结构类:
---------------------------------------------------
标识符 实际类型 意义 
LPCRECT const RECT FAR* RECT结构常量指针(32位) 
LPCRECTL const RECTL FAR* RECTL结构常量指针(32位) 
LUID   LUID结构。局部唯一的标识符(Locally unique identifier) 
PLUID LUID* 一个LUID型指针 
---------------------------------------------------

空类:
---------------------------------------------------
标识符 实际类型 意义 
CONST const 常量 
VOID void 任何类型 
PVOID void near* 一个指向任何类型的指针 
LPVOID void far* 一个void型远指针 
LPCVOID CONST void far* 一个指向任何类型的常量指针