您的位置:首页 > 编程语言

window 编程数据类型

2015-11-03 10:56 316 查看

Windows Data Types

The data types supported by Windows are used to define function return values, function and message parameters, and structure members. They define the size and meaning of these elements. For more information about the underlying C/C++ data types, see
Data Type Ranges.

The following table contains the following types: character, integer, Boolean, pointer, and handle. The character, integer, and Boolean types are common to most C compilers. Most of the pointer-type names begin with a prefix of P or LP. Handles refer to
a resource that has been loaded into memory.

For more information about handling 64-bit integers, see
Large Integers.

Data typeDescription
APIENTRYThe calling convention for system functions.

This type is declared in WinDef.h as follows:

#define APIENTRY WINAPI


ATOMAn atom. For more information, see
About Atom Tables.

This type is declared in WinDef.h as follows:

typedef WORD ATOM;


BOOLA Boolean variable (should be TRUE or FALSE).

This type is declared in WinDef.h as follows:

typedef int BOOL;


BOOLEANA Boolean variable (should be TRUE or FALSE).

This type is declared in WinNT.h as follows:

typedef BYTE BOOLEAN;


BYTEA byte (8 bits).

This type is declared in WinDef.h as follows:

typedef unsigned char BYTE;


CALLBACKThe calling convention for callback functions.

This type is declared in WinDef.h as follows:

#define CALLBACK __stdcall


CALLBACK, WINAPI, and APIENTRY are all used to define functions with the __stdcall calling convention. Most functions in the Windows API are declared using
WINAPI. You may wish to use CALLBACK for the callback functions that you implement to help identify the function as a callback function.

CCHARAn 8-bit Windows (ANSI) character.

This type is declared in WinNT.h as follows:

typedef char CCHAR;


CHARAn 8-bit Windows (ANSI) character. For more information, see
Character Sets Used By Fonts.

This type is declared in WinNT.h as follows:

typedef char CHAR;


COLORREFThe red, green, blue (RGB) color value (32 bits). See
COLORREF for information on this type.

This type is declared in WinDef.h as follows:

typedef DWORD COLORREF;


CONSTA variable whose value is to remain constant during execution.

This type is declared in WinDef.h as follows:

#define CONST const


DWORDA 32-bit unsigned integer. The range is 0 through 4294967295 decimal.

This type is declared in IntSafe.h as follows:

typedef unsigned long DWORD;


DWORDLONGA 64-bit unsigned integer. The range is 0 through 18446744073709551615 decimal.

This type is declared in IntSafe.h as follows:

typedef unsigned __int64 DWORDLONG;


DWORD_PTRAn 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.)

This type is declared in BaseTsd.h as follows:

typedef ULONG_PTR DWORD_PTR;


DWORD32A 32-bit unsigned integer.

This type is declared in BaseTsd.h as follows:

typedef unsigned int DWORD32;


DWORD64A 64-bit unsigned integer.

This type is declared in BaseTsd.h as follows:

typedef unsigned __int64 DWORD64;


FLOATA floating-point variable.

This type is declared in WinDef.h as follows:

typedef float FLOAT;


HACCELA handle to an
accelerator table.

This type is declared in WinDef.h as follows:

typedef HANDLE HACCEL;


HALF_PTRHalf the size of a pointer. Use within a structure that contains a pointer and two small fields.

This type is declared in BaseTsd.h as follows:

C++

#ifdef _WIN64
typedef int HALF_PTR;
#else
typedef short HALF_PTR;
#endif


HANDLEA handle to an object.

This type is declared in WinNT.h as follows:

typedef PVOID HANDLE;


HBITMAPA handle to a
bitmap.

This type is declared in WinDef.h as follows:

typedef HANDLE HBITMAP;


HBRUSHA handle to a
brush.

This type is declared in WinDef.h as follows:

typedef HANDLE HBRUSH;


HCOLORSPACEA handle to a
color space.

This type is declared in WinDef.h as follows:

typedef HANDLE HCOLORSPACE;


HCONVA handle to a dynamic data exchange (DDE) conversation.

This type is declared in Ddeml.h as follows:

typedef HANDLE HCONV;


HCONVLISTA handle to a DDE conversation list.

This type is declared in Ddeml.h as follows:

typedef HANDLE HCONVLIST;


HCURSORA handle to a
cursor.

This type is declared in WinDef.h as follows:

typedef HICON HCURSOR;


HDCA handle to a
device context (DC).

This type is declared in WinDef.h as follows:

typedef HANDLE HDC;


HDDEDATAA handle to DDE data.

This type is declared in Ddeml.h as follows:

typedef HANDLE HDDEDATA;


HDESKA handle to a
desktop.

This type is declared in WinDef.h as follows:

typedef HANDLE HDESK;


HDROPA handle to an internal drop structure.

This type is declared in ShellApi.h as follows:

typedef HANDLE HDROP;


HDWPA handle to a deferred window position structure.

This type is declared in WinUser.h as follows:

typedef HANDLE HDWP;


HENHMETAFILEA handle to an
enhanced metafile.

This type is declared in WinDef.h as follows:

typedef HANDLE HENHMETAFILE;


HFILEA handle to a file opened by
OpenFile, not
CreateFile.

This type is declared in WinDef.h as follows:

typedef int HFILE;


HFONTA handle to a
font.

This type is declared in WinDef.h as follows:

typedef HANDLE HFONT;


HGDIOBJA handle to a GDI object.

This type is declared in WinDef.h as follows:

typedef HANDLE HGDIOBJ;


HGLOBALA handle to a global memory block.

This type is declared in WinDef.h as follows:

typedef HANDLE HGLOBAL;


HHOOKA handle to a
hook.

This type is declared in WinDef.h as follows:

typedef HANDLE HHOOK;


HICONA handle to an
icon.

This type is declared in WinDef.h as follows:

typedef HANDLE HICON;


HINSTANCEA handle to an instance. This is the base address of the module in memory.

HMODULE and HINSTANCE are the same today, but represented different things in 16-bit Windows.

This type is declared in WinDef.h as follows:

typedef HANDLE HINSTANCE;


HKEYA handle to a registry key.

This type is declared in WinDef.h as follows:

typedef HANDLE HKEY;


HKLAn input locale identifier.

This type is declared in WinDef.h as follows:

typedef HANDLE HKL;


HLOCALA handle to a local memory block.

This type is declared in WinDef.h as follows:

typedef HANDLE HLOCAL;


HMENUA handle to a
menu.

This type is declared in WinDef.h as follows:

typedef HANDLE HMENU;


HMETAFILEA handle to a
metafile.

This type is declared in WinDef.h as follows:

typedef HANDLE HMETAFILE;


HMODULEA handle to a module. The is the base address of the module in memory.

HMODULE and HINSTANCE are the same in current versions of Windows, but represented different things in 16-bit Windows.

This type is declared in WinDef.h as follows:

typedef HINSTANCE HMODULE;


HMONITORA handle to a display monitor.

This type is declared in WinDef.h as follows:

if(WINVER >= 0x0500) typedef HANDLE HMONITOR;


HPALETTEA handle to a palette.

This type is declared in WinDef.h as follows:

typedef HANDLE HPALETTE;


HPENA handle to a
pen.

This type is declared in WinDef.h as follows:

typedef HANDLE HPEN;


HRESULTThe return codes used by COM interfaces. For more information, see
Structure of the COM Error Codes. To test an HRESULT value, use the
FAILED and
SUCCEEDED macros.

This type is declared in WinNT.h as follows:

typedef LONG HRESULT;


HRGNA handle to a
region.

This type is declared in WinDef.h as follows:

typedef HANDLE HRGN;


HRSRCA handle to a resource.

This type is declared in WinDef.h as follows:

typedef HANDLE HRSRC;


HSZA handle to a DDE string.

This type is declared in Ddeml.h as follows:

typedef HANDLE HSZ;


HWINSTAA handle to a
window station.

This type is declared in WinDef.h as follows:

typedef HANDLE WINSTA;


HWNDA handle to a
window.

This type is declared in WinDef.h as follows:

typedef HANDLE HWND;


INTA 32-bit signed integer. The range is -2147483648 through 2147483647 decimal.

This type is declared in WinDef.h as follows:

typedef int INT;


INT_PTRA signed integer type for pointer precision. Use when casting a pointer to an integer to perform pointer arithmetic.

This type is declared in BaseTsd.h as follows:

C++

#if defined(_WIN64)
typedef __int64 INT_PTR;
#else
typedef int INT_PTR;
#endif


INT8An 8-bit signed integer.

This type is declared in BaseTsd.h as follows:

typedef signed char INT8;


INT16A 16-bit signed integer.

This type is declared in BaseTsd.h as follows:

typedef signed short INT16;


INT32A 32-bit signed integer. The range is -2147483648 through 2147483647 decimal.

This type is declared in BaseTsd.h as follows:

typedef signed int INT32;


INT64A 64-bit signed integer. The range is –9223372036854775808 through 9223372036854775807 decimal.

This type is declared in BaseTsd.h as follows:

typedef signed __int64 INT64;


LANGIDA language identifier. For more information, see
Language Identifiers.

This type is declared in WinNT.h as follows:

typedef WORD LANGID;


LCIDA locale identifier. For more information, see
Locale Identifiers.

This type is declared in WinNT.h as follows:

typedef DWORD LCID;


LCTYPEA locale information type. For a list, see
Locale Information Constants.

This type is declared in WinNls.h as follows:

typedef DWORD LCTYPE;


LGRPIDA language group identifier. For a list, see
EnumLanguageGroupLocales.

This type is declared in WinNls.h as follows:

typedef DWORD LGRPID;


LONGA 32-bit signed integer. The range is –2147483648 through 2147483647 decimal.

This type is declared in WinNT.h as follows:

typedef long LONG;


LONGLONGA 64-bit signed integer. The range is –9223372036854775808 through 9223372036854775807 decimal.

This type is declared in WinNT.h as follows:

C++

#if !defined(_M_IX86)
typedef __int64 LONGLONG;
#else
typedef double LONGLONG;
#endif


LONG_PTRA signed long type for pointer precision. Use when casting a pointer to a long to perform pointer arithmetic.

This type is declared in BaseTsd.h as follows:

C++

#if defined(_WIN64)
typedef __int64 LONG_PTR;
#else
typedef long LONG_PTR;
#endif


LONG32A 32-bit signed integer. The range is –2147483648 through 2147483647 decimal.

This type is declared in BaseTsd.h as follows:

typedef signed int LONG32;


LONG64A 64-bit signed integer. The range is –9223372036854775808 through 9223372036854775807 decimal.

This type is declared in BaseTsd.h as follows:

typedef __int64 LONG64;


LPARAMA message parameter.

This type is declared in WinDef.h as follows:

typedef LONG_PTR LPARAM;


LPBOOLA pointer to a
BOOL.

This type is declared in WinDef.h as follows:

typedef BOOL far *LPBOOL;


LPBYTEA pointer to a
BYTE.

This type is declared in WinDef.h as follows:

typedef BYTE far *LPBYTE;


LPCOLORREFA pointer to a
COLORREF value.

This type is declared in WinDef.h as follows:

typedef DWORD *LPCOLORREF;


LPCSTRA pointer to a constant null-terminated string of 8-bit Windows (ANSI) characters. For more information, see
Character Sets Used By Fonts.

This type is declared in WinNT.h as follows:

typedef __nullterminated CONST CHAR *LPCSTR;


LPCTSTRAn
LPCWSTR if UNICODE is defined, an
LPCSTR otherwise. For more information, see
Windows Data Types for Strings.

This type is declared in WinNT.h as follows:

C++

#ifdef UNICODE
typedef LPCWSTR LPCTSTR;
#else
typedef LPCSTR LPCTSTR;
#endif


LPCVOIDA pointer to a constant of any type.

This type is declared in WinDef.h as follows:

typedef CONST void *LPCVOID;


LPCWSTRA pointer to a constant null-terminated string of 16-bit Unicode characters. For more information, see
Character Sets Used By Fonts.

This type is declared in WinNT.h as follows:

typedef CONST WCHAR *LPCWSTR;


LPDWORDA pointer to a
DWORD.

This type is declared in WinDef.h as follows:

typedef DWORD *LPDWORD;


LPHANDLEA pointer to a
HANDLE.

This type is declared in WinDef.h as follows:

typedef HANDLE *LPHANDLE;


LPINTA pointer to an
INT.

This type is declared in WinDef.h as follows:

typedef int *LPINT;


LPLONGA pointer to a
LONG.

This type is declared in WinDef.h as follows:

typedef long *LPLONG;


LPSTRA pointer to a null-terminated string of 8-bit Windows (ANSI) characters. For more information, see
Character Sets Used By Fonts.

This type is declared in WinNT.h as follows:

typedef CHAR *LPSTR;


LPTSTRAn
LPWSTR if UNICODE is defined, an
LPSTR otherwise. For more information, see
Windows Data Types for Strings.

This type is declared in WinNT.h as follows:

C++

#ifdef UNICODE
typedef LPWSTR LPTSTR;
#else
typedef LPSTR LPTSTR;
#endif


LPVOIDA pointer to any type.

This type is declared in WinDef.h as follows:

typedef void *LPVOID;


LPWORDA pointer to a
WORD.

This type is declared in WinDef.h as follows:

typedef WORD *LPWORD;


LPWSTRA pointer to a null-terminated string of 16-bit Unicode characters. For more information, see
Character Sets Used By Fonts.

This type is declared in WinNT.h as follows:

typedef WCHAR *LPWSTR;


LRESULTSigned result of message processing.

This type is declared in WinDef.h as follows:

typedef LONG_PTR LRESULT;


PBOOLA pointer to a
BOOL.

This type is declared in WinDef.h as follows:

typedef BOOL *PBOOL;


PBOOLEANA pointer to a
BOOLEAN.

This type is declared in WinNT.h as follows:

typedef BOOLEAN *PBOOLEAN;


PBYTEA pointer to a
BYTE.

This type is declared in WinDef.h as follows:

typedef BYTE *PBYTE;


PCHARA pointer to a
CHAR.

This type is declared in WinNT.h as follows:

typedef CHAR *PCHAR;


PCSTRA pointer to a constant null-terminated string of 8-bit Windows (ANSI) characters. For more information, see
Character Sets Used By Fonts.

This type is declared in WinNT.h as follows:

typedef CONST CHAR *PCSTR;


PCTSTRA
PCWSTR if UNICODE is defined, a
PCSTR otherwise. For more information, see
Windows Data Types for Strings.

This type is declared in WinNT.h as follows:

C++

#ifdef UNICODE
typedef LPCWSTR PCTSTR;
#else
typedef LPCSTR PCTSTR;
#endif


PCWSTRA pointer to a constant null-terminated string of 16-bit Unicode characters. For more information, see
Character Sets Used By Fonts.

This type is declared in WinNT.h as follows:

typedef CONST WCHAR *PCWSTR;


PDWORDA pointer to a
DWORD.

This type is declared in WinDef.h as follows:

typedef DWORD *PDWORD;


PDWORDLONGA pointer to a
DWORDLONG.

This type is declared in WinNT.h as follows:

typedef DWORDLONG *PDWORDLONG;


PDWORD_PTRA pointer to a
DWORD_PTR.

This type is declared in BaseTsd.h as follows:

typedef DWORD_PTR *PDWORD_PTR;


PDWORD32A pointer to a
DWORD32.

This type is declared in BaseTsd.h as follows:

typedef DWORD32 *PDWORD32;


PDWORD64A pointer to a
DWORD64.

This type is declared in BaseTsd.h as follows:

typedef DWORD64 *PDWORD64;


PFLOATA pointer to a
FLOAT.

This type is declared in WinDef.h as follows:

typedef FLOAT *PFLOAT;


PHALF_PTRA pointer to a
HALF_PTR.

This type is declared in BaseTsd.h as follows:

C++

#ifdef _WIN64
typedef HALF_PTR *PHALF_PTR;
#else
typedef HALF_PTR *PHALF_PTR;
#endif


PHANDLEA pointer to a
HANDLE.

This type is declared in WinNT.h as follows:

typedef HANDLE *PHANDLE;


PHKEYA pointer to an
HKEY.

This type is declared in WinDef.h as follows:

typedef HKEY *PHKEY;


PINTA pointer to an
INT.

This type is declared in WinDef.h as follows:

typedef int *PINT;


PINT_PTRA pointer to an
INT_PTR.

This type is declared in BaseTsd.h as follows:

typedef INT_PTR *PINT_PTR;


PINT8A pointer to an
INT8.

This type is declared in BaseTsd.h as follows:

typedef INT8 *PINT8;


PINT16A pointer to an
INT16.

This type is declared in BaseTsd.h as follows:

typedef INT16 *PINT16;


PINT32A pointer to an
INT32.

This type is declared in BaseTsd.h as follows:

typedef INT32 *PINT32;


PINT64A pointer to an
INT64.

This type is declared in BaseTsd.h as follows:

typedef INT64 *PINT64;


PLCIDA pointer to an
LCID.

This type is declared in WinNT.h as follows:

typedef PDWORD PLCID;


PLONGA pointer to a
LONG.

This type is declared in WinNT.h as follows:

typedef LONG *PLONG;


PLONGLONGA pointer to a
LONGLONG.

This type is declared in WinNT.h as follows:

typedef LONGLONG *PLONGLONG;


PLONG_PTRA pointer to a
LONG_PTR.

This type is declared in BaseTsd.h as follows:

typedef LONG_PTR *PLONG_PTR;


PLONG32A pointer to a
LONG32.

This type is declared in BaseTsd.h as follows:

typedef LONG32 *PLONG32;


PLONG64A pointer to a
LONG64.

This type is declared in BaseTsd.h as follows:

typedef LONG64 *PLONG64;


POINTER_32A 32-bit pointer. On a 32-bit system, this is a native pointer. On a 64-bit system, this is a truncated 64-bit pointer.

This type is declared in BaseTsd.h as follows:

C++

#if defined(_WIN64)
#define POINTER_32 __ptr32
#else
#define POINTER_32
#endif


POINTER_64A 64-bit pointer. On a 64-bit system, this is a native pointer. On a 32-bit system, this is a sign-extended 32-bit pointer.

Note that it is not safe to assume the state of the high pointer bit.

This type is declared in BaseTsd.h as follows:

C++

#if (_MSC_VER >= 1300)
#define POINTER_64 __ptr64
#else
#define POINTER_64
#endif


POINTER_SIGNEDA signed pointer.

This type is declared in BaseTsd.h as follows:

#define POINTER_SIGNED __sptr


POINTER_UNSIGNEDAn unsigned pointer.

This type is declared in BaseTsd.h as follows:

#define POINTER_UNSIGNED __uptr


PSHORTA pointer to a
SHORT.

This type is declared in WinNT.h as follows:

typedef SHORT *PSHORT;


PSIZE_TA pointer to a
SIZE_T.

This type is declared in BaseTsd.h as follows:

typedef SIZE_T *PSIZE_T;


PSSIZE_TA pointer to a
SSIZE_T.

This type is declared in BaseTsd.h as follows:

typedef SSIZE_T *PSSIZE_T;


PSTRA pointer to a null-terminated string of 8-bit Windows (ANSI) characters. For more information, see
Character Sets Used By Fonts.

This type is declared in WinNT.h as follows:

typedef CHAR *PSTR;


PTBYTEA pointer to a
TBYTE.

This type is declared in WinNT.h as follows:

typedef TBYTE *PTBYTE;


PTCHARA pointer to a
TCHAR.

This type is declared in WinNT.h as follows:

typedef TCHAR *PTCHAR;


PTSTRA
PWSTR if UNICODE is defined, a
PSTR otherwise. For more information, see
Windows Data Types for Strings.

This type is declared in WinNT.h as follows:

C++

#ifdef UNICODE
typedef LPWSTR PTSTR;
#else typedef LPSTR PTSTR;
#endif


PUCHARA pointer to a
UCHAR.

This type is declared in WinDef.h as follows:

typedef UCHAR *PUCHAR;


PUHALF_PTRA pointer to a
UHALF_PTR.

This type is declared in BaseTsd.h as follows:

C++

#ifdef _WIN64
typedef UHALF_PTR *PUHALF_PTR;
#else
typedef UHALF_PTR *PUHALF_PTR;
#endif


PUINTA pointer to a
UINT.

This type is declared in WinDef.h as follows:

typedef UINT *PUINT;


PUINT_PTRA pointer to a
UINT_PTR.

This type is declared in BaseTsd.h as follows:

typedef UINT_PTR *PUINT_PTR;


PUINT8A pointer to a
UINT8.

This type is declared in BaseTsd.h as follows:

typedef UINT8 *PUINT8;


PUINT16A pointer to a
UINT16.

This type is declared in BaseTsd.h as follows:

typedef UINT16 *PUINT16;


PUINT32A pointer to a
UINT32.

This type is declared in BaseTsd.h as follows:

typedef UINT32 *PUINT32;


PUINT64A pointer to a
UINT64.

This type is declared in BaseTsd.h as follows:

typedef UINT64 *PUINT64;


PULONGA pointer to a
ULONG.

This type is declared in WinDef.h as follows:

typedef ULONG *PULONG;


PULONGLONGA pointer to a
ULONGLONG.

This type is declared in WinDef.h as follows:

typedef ULONGLONG *PULONGLONG;


PULONG_PTRA pointer to a
ULONG_PTR.

This type is declared in BaseTsd.h as follows:

typedef ULONG_PTR *PULONG_PTR;


PULONG32A pointer to a
ULONG32.

This type is declared in BaseTsd.h as follows:

typedef ULONG32 *PULONG32;


PULONG64A pointer to a
ULONG64.

This type is declared in BaseTsd.h as follows:

typedef ULONG64 *PULONG64;


PUSHORTA pointer to a
USHORT.

This type is declared in WinDef.h as follows:

typedef USHORT *PUSHORT;


PVOIDA pointer to any type.

This type is declared in WinNT.h as follows:

typedef void *PVOID;


PWCHARA pointer to a
WCHAR.

This type is declared in WinNT.h as follows:

typedef WCHAR *PWCHAR;


PWORDA pointer to a
WORD.

This type is declared in WinDef.h as follows:

typedef WORD *PWORD;


PWSTRA pointer to a null-terminated string of 16-bit Unicode characters. For more information, see
Character Sets Used By Fonts.

This type is declared in WinNT.h as follows:

typedef WCHAR *PWSTR;


QWORDA 64-bit unsigned integer.

This type is declared as follows:

typedef unsigned __int64 QWORD;


SC_HANDLEA handle to a service control manager database. For more information, see
SCM Handles.

This type is declared in WinSvc.h as follows:

typedef HANDLE SC_HANDLE;


SC_LOCKA lock to a service control manager database. For more information, see
SCM Handles.

This type is declared in WinSvc.h as follows:

typedef LPVOID SC_LOCK;


SERVICE_STATUS_HANDLEA handle to a service status value. For more information, see
SCM Handles.

This type is declared in WinSvc.h as follows:

typedef HANDLE SERVICE_STATUS_HANDLE;


SHORTA 16-bit integer. The range is –32768 through 32767 decimal.

This type is declared in WinNT.h as follows:

typedef short SHORT;


SIZE_TThe maximum number of bytes to which a pointer can point. Use for a count that must span the full range of a pointer.

This type is declared in BaseTsd.h as follows:

typedef ULONG_PTR SIZE_T;


SSIZE_TA signed version of
SIZE_T.

This type is declared in BaseTsd.h as follows:

typedef LONG_PTR SSIZE_T;


TBYTEA
WCHAR if UNICODE is defined, a
CHAR otherwise.

This type is declared in WinNT.h as follows:

C++

#ifdef UNICODE
typedef WCHAR TBYTE;
#else
typedef unsigned char TBYTE;
#endif


TCHARA
WCHAR if UNICODE is defined, a
CHAR otherwise.

This type is declared in WinNT.h as follows:

C++

#ifdef UNICODE
typedef WCHAR TCHAR;
#else
typedef char TCHAR;
#endif


UCHARAn unsigned
CHAR.

This type is declared in WinDef.h as follows:

typedef unsigned char UCHAR;


UHALF_PTRAn unsigned
HALF_PTR. Use within a structure that contains a pointer and two small fields.

This type is declared in BaseTsd.h as follows:

C++

#ifdef _WIN64
typedef unsigned int UHALF_PTR;
#else
typedef unsigned short UHALF_PTR;
#endif


UINTAn unsigned
INT. The range is 0 through 4294967295 decimal.

This type is declared in WinDef.h as follows:

typedef unsigned int UINT;


UINT_PTRAn unsigned
INT_PTR.

This type is declared in BaseTsd.h as follows:

C++

#if defined(_WIN64)
typedef unsigned __int64 UINT_PTR;
#else
typedef unsigned int UINT_PTR;
#endif


UINT8An unsigned
INT8.

This type is declared in BaseTsd.h as follows:

typedef unsigned char UINT8;


UINT16An unsigned
INT16.

This type is declared in BaseTsd.h as follows:

typedef unsigned short UINT16;


UINT32An unsigned
INT32. The range is 0 through 4294967295 decimal.

This type is declared in BaseTsd.h as follows:

typedef unsigned int UINT32;


UINT64An unsigned
INT64. The range is 0 through 18446744073709551615 decimal.

This type is declared in BaseTsd.h as follows:

typedef usigned __int 64 UINT64;


ULONGAn unsigned
LONG. The range is 0 through 4294967295 decimal.

This type is declared in WinDef.h as follows:

typedef unsigned long ULONG;


ULONGLONGA 64-bit unsigned integer. The range is 0 through 18446744073709551615 decimal.

This type is declared in WinNT.h as follows:

C++

#if !defined(_M_IX86)
typedef unsigned __int64 ULONGLONG;
#else
typedef double ULONGLONG;
#endif


ULONG_PTRAn unsigned
LONG_PTR.

This type is declared in BaseTsd.h as follows:

C++

#if defined(_WIN64)
typedef unsigned __int64 ULONG_PTR;
#else
typedef unsigned long ULONG_PTR;
#endif


ULONG32An unsigned
LONG32. The range is 0 through 4294967295 decimal.

This type is declared in BaseTsd.h as follows:

typedef unsigned int ULONG32;


ULONG64An unsigned
LONG64. The range is 0 through 18446744073709551615 decimal.

This type is declared in BaseTsd.h as follows:

typedef unsigned __int64 ULONG64;


UNICODE_STRINGA Unicode string.

This type is declared in Winternl.h as follows:

C++

typedef struct _UNICODE_STRING {
USHORT  Length;
USHORT  MaximumLength;
PWSTR  Buffer;
} UNICODE_STRING;
typedef UNICODE_STRING *PUNICODE_STRING;
typedef const UNICODE_STRING *PCUNICODE_STRING;


USHORTAn unsigned
SHORT. The range is 0 through 65535 decimal.

This type is declared in WinDef.h as follows:

typedef unsigned short USHORT;


USNAn update sequence number (USN).

This type is declared in WinNT.h as follows:

typedef LONGLONG USN;


VOIDAny type.

This type is declared in WinNT.h as follows:

#define VOID void


WCHARA 16-bit Unicode character. For more information, see
Character Sets Used By Fonts.

This type is declared in WinNT.h as follows:

typedef wchar_t WCHAR;


WINAPIThe calling convention for system functions.

This type is declared in WinDef.h as follows:

#define WINAPI __stdcall


CALLBACK, WINAPI, and APIENTRY are all used to define functions with the __stdcall calling convention. Most functions in the Windows API are declared using
WINAPI. You may wish to use CALLBACK for the callback functions that you implement to help identify the function as a callback function.

WORDA 16-bit unsigned integer. The range is 0 through 65535 decimal.

This type is declared in WinDef.h as follows:

typedef unsigned short WORD;


WPARAMA message parameter.

This type is declared in WinDef.h as follows:

typedef UINT_PTR WPARAM;


Requirements

Minimum supported client

Windows XP [desktop apps only]
Minimum supported server

Windows Server 2003 [desktop apps only]
Header

BaseTsd.h; WinDef.h; WinNT.h
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: