次の方法で共有


Windows データ型

Windows でサポートされるデータ型は、関数の戻り値、関数とメッセージのパラメーター、および構造体のメンバーを定義するために使用されます。 これらの要素のサイズと意味を定義します。 基になる C/C++ データ型の詳細については、「データ型の範囲」を参照してください。

次の表に、文字、整数、ブール値、ポインター、ハンドルの型を示します。 文字、整数、およびブール型は、ほとんどの C コンパイラに共通です。 ポインター型の名前のほとんどは、プレフィックス P または LP で始まります。 ハンドルは、メモリに読み込まれたリソースを指します。

64 ビット整数の処理の詳細については、「Large Integers」を参照してください。

データ型 形容
APIENTRY システム関数の呼び出し規則。
この型は WinDef.h で次のように宣言されています。
#define APIENTRY WINAPI
ATOM アトム。 詳細については、「Atom Tablesについて」を参照してください。
この型は WinDef.h で次のように宣言されています。
typedef WORD ATOM;
BOOL ブール変数 (TRUE または FALSEする必要があります)。
この型は WinDef.h で次のように宣言されています。
typedef int BOOL;
BOOLEAN ブール変数 (TRUE または FALSEする必要があります)。
この型は、次のように WinNT.h で宣言されています。
typedef BYTE BOOLEAN;
BYTE バイト (8 ビット)。
この型は WinDef.h で次のように宣言されています。
typedef unsigned char BYTE;
CALLBACK コールバック関数の呼び出し規則。
この型は WinDef.h で次のように宣言されています。
#define CALLBACK __stdcall
コールバック、WINAPI、APIENTRY はすべて、__stdcall呼び出し規則を使用して関数を定義するために使用されます。 Windows API のほとんどの関数は、WINAPI使用して宣言されます。 コールバック関数として関数を識別するために、実装するコールバック関数に CALLBACK を使用できます。
CCHAR 8 ビット Windows (ANSI) 文字。
この型は、次のように WinNT.h で宣言されています。
typedef char CCHAR;
CHAR 8 ビット Windows (ANSI) 文字。 詳細については、「フォントで使用される文字セットの 」を参照してください。
この型は、次のように WinNT.h で宣言されています。
typedef char CHAR;
COLORREF 赤、緑、青 (RGB) の色値 (32 ビット)。 この型の詳細については、COLORREF の を参照してください。
この型は WinDef.h で次のように宣言されています。
typedef DWORD COLORREF;
CONST 実行中に値を一定に保つ変数。
この型は WinDef.h で次のように宣言されています。
#define CONST const
DWORD 32 ビット符号なし整数。 範囲は 0 から 10 進数4294967295です。
この型は、次のように IntSafe.h で宣言されています。
typedef unsigned long DWORD;
DWORDLONG 64 ビット符号なし整数。 範囲は 0 から 10 進数18446744073709551615です。
この型は、次のように IntSafe.h で宣言されています。
typedef unsigned __int64 DWORDLONG;
DWORD_PTR ポインターの有効桁数の符号なし long 型。 ポインターを long 型にキャストしてポインターの算術演算を実行する場合に使用します。 (64 ビット Windows で 64 ビットに拡張された一般的な 32 ビット パラメーターにも一般的に使用されます)。
この型は BaseTsd.h で次のように宣言されています。
typedef ULONG_PTR DWORD_PTR;
DWORD32 32 ビット符号なし整数。
この型は BaseTsd.h で次のように宣言されています。
typedef unsigned int DWORD32;
DWORD64 64 ビット符号なし整数。
この型は BaseTsd.h で次のように宣言されています。
typedef unsigned __int64 DWORD64;
FLOAT 浮動小数点変数。
この型は WinDef.h で次のように宣言されています。
typedef float FLOAT;
HACCEL アクセラレータ テーブルへのハンドル
この型は WinDef.h で次のように宣言されています。
typedef HANDLE HACCEL;
HALF_PTR ポインターのサイズの半分。 ポインターと 2 つの小さなフィールドを含む構造体内で使用します。
この型は BaseTsd.h で次のように宣言されています。
C++
#ifdef _WIN64
 typedef int HALF_PTR;
#else
 typedef short HALF_PTR;
#endif
HANDLE

オブジェクトへのハンドル。

この型は、次のように WinNT.h で宣言されています。

typedef PVOID HANDLE;

HBITMAP

ビットマップへのハンドル。

この型は WinDef.h で次のように宣言されています。

typedef HANDLE HBITMAP;

HBRUSH

ブラシへのハンドル。

この型は WinDef.h で次のように宣言されています。

typedef HANDLE HBRUSH;

HCOLORSPACE

色空間へのハンドル。

この型は WinDef.h で次のように宣言されています。

typedef HANDLE HCOLORSPACE;

HCONV

動的データ交換 (DDE) 会話へのハンドル。

この型は、次のように Ddeml.h で宣言されています。

typedef HANDLE HCONV;

HCONVLIST

DDE 会話リストへのハンドル。

この型は、次のように Ddeml.h で宣言されています。

typedef HANDLE HCONVLIST;

HCURSOR

カーソルへのハンドル。

この型は WinDef.h で次のように宣言されています。

typedef HICON HCURSOR;

HDC

デバイス コンテキスト (DC) へのハンドル。

この型は WinDef.h で次のように宣言されています。

typedef HANDLE HDC;

HDDEDATA

DDE データへのハンドル。

この型は、次のように Ddeml.h で宣言されています。

typedef HANDLE HDDEDATA;

HDESK

デスクトップへのハンドル。

この型は WinDef.h で次のように宣言されています。

typedef HANDLE HDESK;

HDROP

内部ドロップ構造へのハンドル。

この型は、ShellApi.h で次のように宣言されています。

typedef HANDLE HDROP;

HDWP

遅延ウィンドウ位置構造体へのハンドル。

この型は、次のように WinUser.h で宣言されています。

typedef HANDLE HDWP;

HENHMETAFILE

拡張メタファイルへのハンドル。

この型は WinDef.h で次のように宣言されています。

typedef HANDLE HENHMETAFILE;

HFILE

CreateFileではなく、OpenFileによって開かれたファイルへのハンドル。

この型は WinDef.h で次のように宣言されています。

typedef int HFILE;

HFONT

フォントへのハンドル。

この型は WinDef.h で次のように宣言されています。

typedef HANDLE HFONT;

HGDIOBJ

GDI オブジェクトへのハンドル。

この型は WinDef.h で次のように宣言されています。

typedef HANDLE HGDIOBJ;

HGLOBAL

グローバル メモリ ブロックへのハンドル。

この型は WinDef.h で次のように宣言されています。

typedef HANDLE HGLOBAL;

HHOOK

フックへのハンドル。

この型は WinDef.h で次のように宣言されています。

typedef HANDLE HHOOK;

HICON

アイコンへのハンドル

この型は WinDef.h で次のように宣言されています。

typedef HANDLE HICON;

HINSTANCE

インスタンスへのハンドル。 これは、メモリ内のモジュールのベース アドレスです。

HMODULEHINSTANCE は現在同じですが、16 ビット Windows ではさまざまな表現が行われています。

この型は WinDef.h で次のように宣言されています。

typedef HANDLE HINSTANCE;

HKEY

レジストリ キーへのハンドル。

この型は WinDef.h で次のように宣言されています。

typedef HANDLE HKEY;

HKL

入力ロケール識別子。

この型は WinDef.h で次のように宣言されています。

typedef HANDLE HKL;

HLOCAL

ローカル メモリ ブロックへのハンドル。

この型は WinDef.h で次のように宣言されています。

typedef HANDLE HLOCAL;

HMENU

メニューへのハンドル

この型は WinDef.h で次のように宣言されています。

typedef HANDLE HMENU;

HMETAFILE

メタファイルへのハンドル。

この型は WinDef.h で次のように宣言されています。

typedef HANDLE HMETAFILE;

HMODULE

モジュールへのハンドル。 これは、メモリ内のモジュールのベース アドレスです。

HMODULEHINSTANCE は、現在のバージョンの Windows では同じですが、16 ビット Windows では異なって表されています。

この型は WinDef.h で次のように宣言されています。

typedef HINSTANCE HMODULE;

HMONITOR

ディスプレイ モニターへのハンドル。

この型は WinDef.h で次のように宣言されています。

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

HPALETTE

パレットへのハンドル。

この型は WinDef.h で次のように宣言されています。

typedef HANDLE HPALETTE;

HPEN

ペンへのハンドル。

この型は WinDef.h で次のように宣言されています。

typedef HANDLE HPEN;

HRESULT

COM インターフェイスで使用されるリターン コード。 詳細については、「COM エラー コードの 構造」を参照してください。 HRESULT 値をテストするには、FAILED を使用し、SUCCEEDED マクロを します。

この型は、次のように WinNT.h で宣言されています。

typedef LONG HRESULT;

HRGN

リージョンへのハンドル。

この型は WinDef.h で次のように宣言されています。

typedef HANDLE HRGN;

HRSRC

リソースへのハンドル。

この型は WinDef.h で次のように宣言されています。

typedef HANDLE HRSRC;

HSZ

DDE 文字列へのハンドル。

この型は、次のように Ddeml.h で宣言されています。

typedef HANDLE HSZ;

HWINSTA

ウィンドウ ステーションへのハンドル

この型は WinDef.h で次のように宣言されています。

typedef HANDLE WINSTA;

HWND

ウィンドウへのハンドル

この型は WinDef.h で次のように宣言されています。

typedef HANDLE HWND;

INT

32 ビット符号付き整数。 範囲は 10 進2147483647 -2147483648。

この型は WinDef.h で次のように宣言されています。

typedef int INT;

INT_PTR

ポインターの有効桁数の符号付き整数型。 ポインターを整数にキャストしてポインターの算術演算を実行する場合に使用します。

この型は BaseTsd.h で次のように宣言されています。

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

8 ビット符号付き整数。

この型は BaseTsd.h で次のように宣言されています。

typedef signed char INT8;

INT16

16 ビット符号付き整数。

この型は BaseTsd.h で次のように宣言されています。

typedef signed short INT16;

INT32

32 ビット符号付き整数。 範囲は 10 進2147483647 -2147483648。

この型は BaseTsd.h で次のように宣言されています。

typedef signed int INT32;

INT64

64 ビット符号付き整数。 範囲は 10 進数9223372036854775807 -9223372036854775808。

この型は BaseTsd.h で次のように宣言されています。

typedef signed __int64 INT64;

LANGID

言語識別子。 詳細については、「言語識別子の」を参照してください。

この型は、次のように WinNT.h で宣言されています。

typedef WORD LANGID;

LCID

ロケール識別子。 詳細については、「ロケール識別子を する」を参照してください。

この型は、次のように WinNT.h で宣言されています。

typedef DWORD LCID;

LCTYPE

ロケール情報の種類。 一覧については、「ロケール情報定数 」を参照してください。

この型は、次のように WinNls.h で宣言されています。

typedef DWORD LCTYPE;

LGRPID

言語グループ識別子。 一覧については、「EnumLanguageGroupLocales参照してください。

この型は、次のように WinNls.h で宣言されています。

typedef DWORD LGRPID;

LONG

32 ビット符号付き整数。 範囲は 10 進2147483647 -2147483648。

この型は、次のように WinNT.h で宣言されています。

typedef long LONG;

LONGLONG

64 ビット符号付き整数。 範囲は 10 進数9223372036854775807 -9223372036854775808。

この型は、次のように WinNT.h で宣言されています。

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

ポインターの有効桁数の符号付き long 型。 ポインターを long にキャストしてポインターの算術演算を実行する場合に使用します。

この型は BaseTsd.h で次のように宣言されています。

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

32 ビット符号付き整数。 範囲は 10 進2147483647 -2147483648。

この型は BaseTsd.h で次のように宣言されています。

typedef signed int LONG32;

LONG64

64 ビット符号付き整数。 範囲は 10 進数9223372036854775807 -9223372036854775808。

この型は BaseTsd.h で次のように宣言されています。

typedef __int64 LONG64;

LPARAM

メッセージ パラメーター。

この型は WinDef.h で次のように宣言されています。

typedef LONG_PTR LPARAM;

LPBOOL

BOOLへのポインター。

この型は WinDef.h で次のように宣言されています。

typedef BOOL far *LPBOOL;

LPBYTE

BYTEへのポインター。

この型は WinDef.h で次のように宣言されています。

typedef BYTE far *LPBYTE;

LPCOLORREF

COLORREF 値へのポインター。

この型は WinDef.h で次のように宣言されています。

typedef DWORD *LPCOLORREF;

LPCSTR

8 ビット Windows (ANSI) 文字の定数 null で終わる文字列へのポインター。 詳細については、「フォントで使用される文字セットの 」を参照してください。

この型は、次のように WinNT.h で宣言されています。

typedef __nullterminated CONST CHAR *LPCSTR;

LPCTSTR

UNICODE が定義 場合は LPCWSTR、それ以外の場合は LPCSTR。 詳細については、「文字列の Windows データ型を する」を参照してください。

この型は、次のように WinNT.h で宣言されています。

C++
#ifdef UNICODE
 typedef LPCWSTR LPCTSTR; 
#else
 typedef LPCSTR LPCTSTR;
#endif
LPCVOID

任意の型の定数へのポインター。

この型は WinDef.h で次のように宣言されています。

typedef CONST void *LPCVOID;

LPCWSTR

16 ビット Unicode 文字の定数 null で終わる文字列へのポインター。 詳細については、「フォントで使用される文字セットの 」を参照してください。

この型は、次のように WinNT.h で宣言されています。

typedef CONST WCHAR *LPCWSTR;

LPDWORD

DWORDへのポインター。

この型は WinDef.h で次のように宣言されています。

typedef DWORD *LPDWORD;

LPHANDLE

HANDLEへのポインター。

この型は WinDef.h で次のように宣言されています。

typedef HANDLE *LPHANDLE;

LPINT

INTへのポインター。

この型は WinDef.h で次のように宣言されています。

typedef int *LPINT;

LPLONG

LONGへのポインター。

この型は WinDef.h で次のように宣言されています。

typedef long *LPLONG;

LPSTR

8 ビット Windows (ANSI) 文字の null で終わる文字列へのポインター。 詳細については、「フォントで使用される文字セットの 」を参照してください。

この型は、次のように WinNT.h で宣言されています。

typedef CHAR *LPSTR;

LPTSTR

UNICODE が定義 場合は LPWSTR、それ以外の場合は LPSTR。 詳細については、「文字列の Windows データ型を する」を参照してください。

この型は、次のように WinNT.h で宣言されています。

C++
#ifdef UNICODE
 typedef LPWSTR LPTSTR;
#else
 typedef LPSTR LPTSTR;
#endif
LPVOID

任意の型へのポインター。

この型は WinDef.h で次のように宣言されています。

typedef void *LPVOID;

LPWORD

WORDへのポインター。

この型は WinDef.h で次のように宣言されています。

typedef WORD *LPWORD;

LPWSTR

16 ビット Unicode 文字の null で終わる文字列へのポインター。 詳細については、「フォントで使用される文字セットの 」を参照してください。

この型は、次のように WinNT.h で宣言されています。

typedef WCHAR *LPWSTR;

LRESULT

メッセージ処理の署名付き結果。

この型は WinDef.h で次のように宣言されています。

typedef LONG_PTR LRESULT;

PBOOL

BOOLへのポインター。

この型は WinDef.h で次のように宣言されています。

typedef BOOL *PBOOL;

PBOOLEAN

BOOLEANへのポインター。

この型は、次のように WinNT.h で宣言されています。

typedef BOOLEAN *PBOOLEAN;

PBYTE

BYTEへのポインター。

この型は WinDef.h で次のように宣言されています。

typedef BYTE *PBYTE;

PCHAR

CHARへのポインター。

この型は、次のように WinNT.h で宣言されています。

typedef CHAR *PCHAR;

PCSTR

8 ビット Windows (ANSI) 文字の定数 null で終わる文字列へのポインター。 詳細については、「フォントで使用される文字セットの 」を参照してください。

この型は、次のように WinNT.h で宣言されています。

typedef CONST CHAR *PCSTR;

PCTSTR

UNICODE が定義されている場合は PCWSTR、それ以外の場合は PCSTR。 詳細については、「文字列の Windows データ型を する」を参照してください。

この型は、次のように WinNT.h で宣言されています。

C++
#ifdef UNICODE
 typedef LPCWSTR PCTSTR;
#else
 typedef LPCSTR PCTSTR;
#endif
PCWSTR

16 ビット Unicode 文字の定数 null で終わる文字列へのポインター。 詳細については、「フォントで使用される文字セットの 」を参照してください。

この型は、次のように WinNT.h で宣言されています。

typedef CONST WCHAR *PCWSTR;

PDWORD

DWORDへのポインター。

この型は WinDef.h で次のように宣言されています。

typedef DWORD *PDWORD;

PDWORDLONG

DWORDLONGへのポインター。

この型は、次のように WinNT.h で宣言されています。

typedef DWORDLONG *PDWORDLONG;

PDWORD_PTR

DWORD_PTRへのポインター。

この型は BaseTsd.h で次のように宣言されています。

typedef DWORD_PTR *PDWORD_PTR;

PDWORD32

DWORD32へのポインター。

この型は BaseTsd.h で次のように宣言されています。

typedef DWORD32 *PDWORD32;

PDWORD64

DWORD64へのポインター。

この型は BaseTsd.h で次のように宣言されています。

typedef DWORD64 *PDWORD64;

PFLOAT

FLOATへのポインター。

この型は WinDef.h で次のように宣言されています。

typedef FLOAT *PFLOAT;

PHALF_PTR

HALF_PTRへのポインター。

この型は BaseTsd.h で次のように宣言されています。

C++
#ifdef _WIN64
 typedef HALF_PTR *PHALF_PTR;
#else
 typedef HALF_PTR *PHALF_PTR;
#endif
PHANDLE

HANDLEへのポインター。

この型は、次のように WinNT.h で宣言されています。

typedef HANDLE *PHANDLE;

PHKEY

HKEYへのポインター。

この型は WinDef.h で次のように宣言されています。

typedef HKEY *PHKEY;

PINT

INTへのポインター。

この型は WinDef.h で次のように宣言されています。

typedef int *PINT;

PINT_PTR

INT_PTRへのポインター。

この型は BaseTsd.h で次のように宣言されています。

typedef INT_PTR *PINT_PTR;

PINT8

INT8へのポインター。

この型は BaseTsd.h で次のように宣言されています。

typedef INT8 *PINT8;

PINT16

INT16へのポインター。

この型は BaseTsd.h で次のように宣言されています。

typedef INT16 *PINT16;

PINT32

INT32へのポインター。

この型は BaseTsd.h で次のように宣言されています。

typedef INT32 *PINT32;

PINT64

INT64へのポインター。

この型は BaseTsd.h で次のように宣言されています。

typedef INT64 *PINT64;

PLCID

LCIDへのポインター。

この型は、次のように WinNT.h で宣言されています。

typedef PDWORD PLCID;

PLONG

LONGへのポインター。

この型は、次のように WinNT.h で宣言されています。

typedef LONG *PLONG;

PLONGLONG

LONGLONGへのポインター。

この型は、次のように WinNT.h で宣言されています。

typedef LONGLONG *PLONGLONG;

PLONG_PTR

LONG_PTRへのポインター。

この型は BaseTsd.h で次のように宣言されています。

typedef LONG_PTR *PLONG_PTR;

PLONG32

LONG32へのポインター。

この型は BaseTsd.h で次のように宣言されています。

typedef LONG32 *PLONG32;

PLONG64

LONG64へのポインター。

この型は BaseTsd.h で次のように宣言されています。

typedef LONG64 *PLONG64;

POINTER_32

32 ビット ポインター。 32 ビット システムでは、これはネイティブ ポインターです。 64 ビット システムでは、これは切り捨てられた 64 ビット ポインターです。

この型は BaseTsd.h で次のように宣言されています。

C++
#if defined(_WIN64)
#define POINTER_32 __ptr32
#else
#define POINTER_32
#endif
POINTER_64

64 ビット ポインター。 64 ビット システムでは、これはネイティブ ポインターです。 32 ビット システムでは、これは符号拡張 32 ビット ポインターです。

高いポインター ビットの状態を想定しても安全ではないことに注意してください。

この型は BaseTsd.h で次のように宣言されています。

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

符号付きポインター。

この型は BaseTsd.h で次のように宣言されています。

#define POINTER_SIGNED __sptr

POINTER_UNSIGNED

符号なしポインター。

この型は BaseTsd.h で次のように宣言されています。

#define POINTER_UNSIGNED __uptr

PSHORT

SHORTへのポインター。

この型は、次のように WinNT.h で宣言されています。

typedef SHORT *PSHORT;

PSIZE_T

SIZE_Tへのポインター。

この型は BaseTsd.h で次のように宣言されています。

typedef SIZE_T *PSIZE_T;

PSSIZE_T

SSIZE_Tへのポインター。

この型は BaseTsd.h で次のように宣言されています。

typedef SSIZE_T *PSSIZE_T;

PSTR

8 ビット Windows (ANSI) 文字の null で終わる文字列へのポインター。 詳細については、「フォントで使用される文字セットの 」を参照してください。

この型は、次のように WinNT.h で宣言されています。

typedef CHAR *PSTR;

PTBYTE

TBYTEへのポインター。

この型は、次のように WinNT.h で宣言されています。

typedef TBYTE *PTBYTE;

PTCHAR

TCHARへのポインター。

この型は、次のように WinNT.h で宣言されています。

typedef TCHAR *PTCHAR;

PTSTR

UNICODE が定義されている場合は PWSTR、それ以外の場合は PSTR。 詳細については、「文字列の Windows データ型を する」を参照してください。

この型は、次のように WinNT.h で宣言されています。

C++
#ifdef UNICODE
 typedef LPWSTR PTSTR;
#else typedef LPSTR PTSTR;
#endif
PUCHAR

UCHARへのポインター。

この型は WinDef.h で次のように宣言されています。

typedef UCHAR *PUCHAR;

PUHALF_PTR

UHALF_PTRへのポインター。

この型は BaseTsd.h で次のように宣言されています。

C++
#ifdef _WIN64
 typedef UHALF_PTR *PUHALF_PTR;
#else
 typedef UHALF_PTR *PUHALF_PTR;
#endif
PUINT

UINTへのポインター。

この型は WinDef.h で次のように宣言されています。

typedef UINT *PUINT;

PUINT_PTR

UINT_PTRへのポインター。

この型は BaseTsd.h で次のように宣言されています。

typedef UINT_PTR *PUINT_PTR;

PUINT8

UINT8へのポインター。

この型は BaseTsd.h で次のように宣言されています。

typedef UINT8 *PUINT8;

PUINT16

UINT16へのポインター。

この型は BaseTsd.h で次のように宣言されています。

typedef UINT16 *PUINT16;

PUINT32

UINT32へのポインター。

この型は BaseTsd.h で次のように宣言されています。

typedef UINT32 *PUINT32;

PUINT64

UINT64へのポインター。

この型は BaseTsd.h で次のように宣言されています。

typedef UINT64 *PUINT64;

PULONG

ULONGへのポインター。

この型は WinDef.h で次のように宣言されています。

typedef ULONG *PULONG;

PULONGLONG

ULONGLONGへのポインター。

この型は WinDef.h で次のように宣言されています。

typedef ULONGLONG *PULONGLONG;

PULONG_PTR

ULONG_PTRへのポインター。

この型は BaseTsd.h で次のように宣言されています。

typedef ULONG_PTR *PULONG_PTR;

PULONG32

ULONG32へのポインター。

この型は BaseTsd.h で次のように宣言されています。

typedef ULONG32 *PULONG32;

PULONG64

ULONG64へのポインター。

この型は BaseTsd.h で次のように宣言されています。

typedef ULONG64 *PULONG64;

PUSHORT

USHORTへのポインター。

この型は WinDef.h で次のように宣言されています。

typedef USHORT *PUSHORT;

PVOID

任意の型へのポインター。

この型は、次のように WinNT.h で宣言されています。

typedef void *PVOID;

PWCHAR

WCHARへのポインター。

この型は、次のように WinNT.h で宣言されています。

typedef WCHAR *PWCHAR;

PWORD

WORDへのポインター。

この型は WinDef.h で次のように宣言されています。

typedef WORD *PWORD;

PWSTR

16 ビット Unicode 文字の null で終わる文字列へのポインター。 詳細については、「フォントで使用される文字セットの 」を参照してください。

この型は、次のように WinNT.h で宣言されています。

typedef WCHAR *PWSTR;

QWORD

64 ビット符号なし整数。

この型は次のように宣言されます。

typedef unsigned __int64 QWORD;

SC_HANDLE

サービス コントロール マネージャー データベースへのハンドル。 詳細については、「SCM ハンドル」を参照してください。

この型は WinSvc.h で次のように宣言されています。

typedef HANDLE SC_HANDLE;

SC_LOCK

サービス コントロール マネージャー データベースへのロック。 詳細については、「SCM ハンドル」を参照してください。

この型は WinSvc.h で次のように宣言されています。

typedef LPVOID SC_LOCK;

SERVICE_STATUS_HANDLE

サービスの状態値へのハンドル。 詳細については、「SCM ハンドル」を参照してください。

この型は WinSvc.h で次のように宣言されています。

typedef HANDLE SERVICE_STATUS_HANDLE;

SHORT

16 ビット整数。 範囲は -32768 ~ 32767 decimal です。

この型は、次のように WinNT.h で宣言されています。

typedef short SHORT;

SIZE_T

ポインターが指すことができる最大バイト数。 ポインターの全範囲にまたがる必要があるカウントに使用します。

この型は BaseTsd.h で次のように宣言されています。

typedef ULONG_PTR SIZE_T;

SSIZE_T

SIZE_Tの署名付きバージョン。

この型は BaseTsd.h で次のように宣言されています。

typedef LONG_PTR SSIZE_T;

TBYTE

UNICODE が定義 場合は WCHAR、それ以外の場合は CHAR

この型は、次のように WinNT.h で宣言されています。

C++
#ifdef UNICODE
 typedef WCHAR TBYTE;
#else
 typedef unsigned char TBYTE;
#endif
TCHAR

UNICODE が定義 場合は WCHAR、それ以外の場合は CHAR

この型は、次のように WinNT.h で宣言されています。

C++
#ifdef UNICODE
 typedef WCHAR TCHAR;
#else
 typedef char TCHAR;
#endif
UCHAR

符号なし CHAR

この型は WinDef.h で次のように宣言されています。

typedef unsigned char UCHAR;

UHALF_PTR

符号なし HALF_PTR。 ポインターと 2 つの小さなフィールドを含む構造体内で使用します。

この型は BaseTsd.h で次のように宣言されています。

C++
#ifdef _WIN64
 typedef unsigned int UHALF_PTR;
#else
 typedef unsigned short UHALF_PTR;
#endif
UINT

符号なし INT。 範囲は 0 から 10 進数4294967295です。

この型は WinDef.h で次のように宣言されています。

typedef unsigned int UINT;

UINT_PTR

符号なし INT_PTR

この型は BaseTsd.h で次のように宣言されています。

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

符号なし INT8

この型は BaseTsd.h で次のように宣言されています。

typedef unsigned char UINT8;

UINT16

符号なし INT16

この型は BaseTsd.h で次のように宣言されています。

typedef unsigned short UINT16;

UINT32

符号なし INT32。 範囲は 0 から 10 進数4294967295です。

この型は BaseTsd.h で次のように宣言されています。

typedef unsigned int UINT32;

UINT64

符号なし INT64。 範囲は 0 から 10 進数18446744073709551615です。

この型は BaseTsd.h で次のように宣言されています。

typedef unsigned __int64 UINT64;

ULONG

符号なし LONG。 範囲は 0 から 10 進数4294967295です。

この型は WinDef.h で次のように宣言されています。

typedef unsigned long ULONG;

ULONGLONG

64 ビット符号なし整数。 範囲は 0 から 10 進数18446744073709551615です。

この型は、次のように WinNT.h で宣言されています。

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

符号なし LONG_PTR

この型は BaseTsd.h で次のように宣言されています。

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

符号なし LONG32。 範囲は 0 から 10 進数4294967295です。

この型は BaseTsd.h で次のように宣言されています。

typedef unsigned int ULONG32;

ULONG64

符号なし LONG64。 範囲は 0 から 10 進数18446744073709551615です。

この型は BaseTsd.h で次のように宣言されています。

typedef unsigned __int64 ULONG64;

UNICODE_STRING

Unicode 文字列。

この型は、次のように Winternl.h で宣言されています。

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

符号なし SHORT。 範囲は 0 から 65535 10 進数です。

この型は WinDef.h で次のように宣言されています。

typedef unsigned short USHORT;

USN

更新シーケンス番号 (USN)。

この型は、次のように WinNT.h で宣言されています。

typedef LONGLONG USN;

VOID

任意の型。

この型は、次のように WinNT.h で宣言されています。

#define VOID void

WCHAR

16 ビット Unicode 文字。 詳細については、「フォントで使用される文字セットの 」を参照してください。

この型は、次のように WinNT.h で宣言されています。

typedef wchar_t WCHAR;

WINAPI

システム関数の呼び出し規則。

この型は WinDef.h で次のように宣言されています。

#define WINAPI __stdcall

コールバック、WINAPI、APIENTRY はすべて、__stdcall呼び出し規則を使用して関数を定義するために使用されます。 Windows API のほとんどの関数は、WINAPI使用して宣言されます。 コールバック関数として関数を識別するために、実装するコールバック関数に CALLBACK を使用できます。

WORD

16 ビット符号なし整数。 範囲は 0 から 65535 10 進数です。

この型は WinDef.h で次のように宣言されています。

typedef unsigned short WORD;

WPARAM

メッセージ パラメーター。

この型は WinDef.h で次のように宣言されています。

typedef UINT_PTR WPARAM;

必要条件

要件 価値
サポートされる最小クライアント
Windows XP [デスクトップ アプリのみ]
サポートされている最小サーバー
Windows Server 2003 [デスクトップ アプリのみ]
ヘッダ
BaseTsd.h;
WinDef.h;
WinNT.h