VC数据类型

VC数据类型,在调用WIN32 API函数时常会用到,现记录如下:

标识符

实际类型

意义

字符类型:

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

 

一个HWaveOut型指针

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*

一个指向任何类型的常量指针

 

posted @ 2014-09-03 23:57  richardw  阅读(221)  评论(0)    收藏  举报