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 |
||
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 で次のように宣言されています。
|
||
HANDLE |
オブジェクトへのハンドル。 この型は、次のように WinNT.h で宣言されています。
|
||
HBITMAP |
ビットマップへのハンドル。 この型は WinDef.h で次のように宣言されています。
|
||
HBRUSH |
ブラシへのハンドル。 この型は WinDef.h で次のように宣言されています。
|
||
HCOLORSPACE |
色空間へのハンドル。 この型は WinDef.h で次のように宣言されています。
|
||
HCONV |
動的データ交換 (DDE) 会話へのハンドル。 この型は、次のように Ddeml.h で宣言されています。
|
||
HCONVLIST |
DDE 会話リストへのハンドル。 この型は、次のように Ddeml.h で宣言されています。
|
||
HCURSOR |
カーソルへのハンドル。 この型は WinDef.h で次のように宣言されています。
|
||
HDC |
デバイス コンテキスト (DC) へのハンドル。 この型は WinDef.h で次のように宣言されています。
|
||
HDDEDATA |
DDE データへのハンドル。 この型は、次のように Ddeml.h で宣言されています。
|
||
HDESK |
デスクトップへのハンドル。 この型は WinDef.h で次のように宣言されています。
|
||
HDROP |
内部ドロップ構造へのハンドル。 この型は、ShellApi.h で次のように宣言されています。
|
||
HDWP |
遅延ウィンドウ位置構造体へのハンドル。 この型は、次のように WinUser.h で宣言されています。
|
||
HENHMETAFILE |
拡張メタファイルへのハンドル。 この型は WinDef.h で次のように宣言されています。
|
||
HFILE |
CreateFile この型は WinDef.h で次のように宣言されています。
|
||
HFONT |
フォントへのハンドル。 この型は WinDef.h で次のように宣言されています。
|
||
HGDIOBJ |
GDI オブジェクトへのハンドル。 この型は WinDef.h で次のように宣言されています。
|
||
HGLOBAL |
グローバル メモリ ブロックへのハンドル。 この型は WinDef.h で次のように宣言されています。
|
||
HHOOK |
フックへのハンドル。 この型は WinDef.h で次のように宣言されています。
|
||
HICON |
この型は WinDef.h で次のように宣言されています。
|
||
HINSTANCE |
インスタンスへのハンドル。 これは、メモリ内のモジュールのベース アドレスです。 HMODULE と HINSTANCE は現在同じですが、16 ビット Windows ではさまざまな表現が行われています。 この型は WinDef.h で次のように宣言されています。
|
||
HKEY |
レジストリ キーへのハンドル。 この型は WinDef.h で次のように宣言されています。
|
||
HKL |
入力ロケール識別子。 この型は WinDef.h で次のように宣言されています。
|
||
HLOCAL |
ローカル メモリ ブロックへのハンドル。 この型は WinDef.h で次のように宣言されています。
|
||
HMENU |
この型は WinDef.h で次のように宣言されています。
|
||
HMETAFILE |
メタファイルへのハンドル。 この型は WinDef.h で次のように宣言されています。
|
||
HMODULE |
モジュールへのハンドル。 これは、メモリ内のモジュールのベース アドレスです。 HMODULE と HINSTANCE は、現在のバージョンの Windows では同じですが、16 ビット Windows では異なって表されています。 この型は WinDef.h で次のように宣言されています。
|
||
HMONITOR |
ディスプレイ モニターへのハンドル。 この型は WinDef.h で次のように宣言されています。
|
||
HPALETTE |
パレットへのハンドル。 この型は WinDef.h で次のように宣言されています。
|
||
HPEN |
ペンへのハンドル。 この型は WinDef.h で次のように宣言されています。
|
||
HRESULT |
COM インターフェイスで使用されるリターン コード。 詳細については、「COM エラー コードの この型は、次のように WinNT.h で宣言されています。
|
||
HRGN |
リージョンへのハンドル。 この型は WinDef.h で次のように宣言されています。
|
||
HRSRC |
リソースへのハンドル。 この型は WinDef.h で次のように宣言されています。
|
||
HSZ |
DDE 文字列へのハンドル。 この型は、次のように Ddeml.h で宣言されています。
|
||
HWINSTA |
この型は WinDef.h で次のように宣言されています。
|
||
HWND |
この型は WinDef.h で次のように宣言されています。
|
||
INT |
32 ビット符号付き整数。 範囲は 10 進2147483647 -2147483648。 この型は WinDef.h で次のように宣言されています。
|
||
INT_PTR |
ポインターの有効桁数の符号付き整数型。 ポインターを整数にキャストしてポインターの算術演算を実行する場合に使用します。 この型は BaseTsd.h で次のように宣言されています。
|
||
INT8 |
8 ビット符号付き整数。 この型は BaseTsd.h で次のように宣言されています。
|
||
INT16 |
16 ビット符号付き整数。 この型は BaseTsd.h で次のように宣言されています。
|
||
INT32 |
32 ビット符号付き整数。 範囲は 10 進2147483647 -2147483648。 この型は BaseTsd.h で次のように宣言されています。
|
||
INT64 |
64 ビット符号付き整数。 範囲は 10 進数9223372036854775807 -9223372036854775808。 この型は BaseTsd.h で次のように宣言されています。
|
||
LANGID |
言語識別子。 詳細については、「言語識別子の」を参照してください。 この型は、次のように WinNT.h で宣言されています。
|
||
LCID |
ロケール識別子。 詳細については、「ロケール識別子を この型は、次のように WinNT.h で宣言されています。
|
||
LCTYPE |
ロケール情報の種類。 一覧については、「ロケール情報定数 」を参照してください。 この型は、次のように WinNls.h で宣言されています。
|
||
LGRPID |
言語グループ識別子。 一覧については、「EnumLanguageGroupLocales この型は、次のように WinNls.h で宣言されています。
|
||
LONG |
32 ビット符号付き整数。 範囲は 10 進2147483647 -2147483648。 この型は、次のように WinNT.h で宣言されています。
|
||
LONGLONG |
64 ビット符号付き整数。 範囲は 10 進数9223372036854775807 -9223372036854775808。 この型は、次のように WinNT.h で宣言されています。
|
||
LONG_PTR |
ポインターの有効桁数の符号付き long 型。 ポインターを long にキャストしてポインターの算術演算を実行する場合に使用します。 この型は BaseTsd.h で次のように宣言されています。
|
||
LONG32 |
32 ビット符号付き整数。 範囲は 10 進2147483647 -2147483648。 この型は BaseTsd.h で次のように宣言されています。
|
||
LONG64 |
64 ビット符号付き整数。 範囲は 10 進数9223372036854775807 -9223372036854775808。 この型は BaseTsd.h で次のように宣言されています。
|
||
LPARAM |
メッセージ パラメーター。 この型は WinDef.h で次のように宣言されています。
|
||
LPBOOL |
BOOLへのポインター。 この型は WinDef.h で次のように宣言されています。
|
||
LPBYTE |
BYTEへのポインター。 この型は WinDef.h で次のように宣言されています。
|
||
LPCOLORREF |
COLORREF 値へのポインター。 この型は WinDef.h で次のように宣言されています。
|
||
LPCSTR |
8 ビット Windows (ANSI) 文字の定数 null で終わる文字列へのポインター。 詳細については、「フォントで使用される文字セットの この型は、次のように WinNT.h で宣言されています。
|
||
LPCTSTR |
UNICODE が定義 この型は、次のように WinNT.h で宣言されています。
|
||
LPCVOID |
任意の型の定数へのポインター。 この型は WinDef.h で次のように宣言されています。
|
||
LPCWSTR |
16 ビット Unicode 文字の定数 null で終わる文字列へのポインター。 詳細については、「フォントで使用される文字セットの この型は、次のように WinNT.h で宣言されています。
|
||
LPDWORD |
DWORDへのポインター。 この型は WinDef.h で次のように宣言されています。
|
||
LPHANDLE |
HANDLEへのポインター。 この型は WinDef.h で次のように宣言されています。
|
||
LPINT |
INTへのポインター。 この型は WinDef.h で次のように宣言されています。
|
||
LPLONG |
LONGへのポインター。 この型は WinDef.h で次のように宣言されています。
|
||
LPSTR |
8 ビット Windows (ANSI) 文字の null で終わる文字列へのポインター。 詳細については、「フォントで使用される文字セットの この型は、次のように WinNT.h で宣言されています。
|
||
LPTSTR |
UNICODE が定義 この型は、次のように WinNT.h で宣言されています。
|
||
LPVOID |
任意の型へのポインター。 この型は WinDef.h で次のように宣言されています。
|
||
LPWORD |
WORDへのポインター。 この型は WinDef.h で次のように宣言されています。
|
||
LPWSTR |
16 ビット Unicode 文字の null で終わる文字列へのポインター。 詳細については、「フォントで使用される文字セットの この型は、次のように WinNT.h で宣言されています。
|
||
LRESULT |
メッセージ処理の署名付き結果。 この型は WinDef.h で次のように宣言されています。
|
||
PBOOL |
BOOLへのポインター。 この型は WinDef.h で次のように宣言されています。
|
||
PBOOLEAN |
BOOLEANへのポインター。 この型は、次のように WinNT.h で宣言されています。
|
||
PBYTE |
BYTEへのポインター。 この型は WinDef.h で次のように宣言されています。
|
||
PCHAR |
CHARへのポインター。 この型は、次のように WinNT.h で宣言されています。
|
||
PCSTR |
8 ビット Windows (ANSI) 文字の定数 null で終わる文字列へのポインター。 詳細については、「フォントで使用される文字セットの この型は、次のように WinNT.h で宣言されています。
|
||
PCTSTR |
UNICODE が定義されている場合は PCWSTR、それ以外の場合は PCSTR。 詳細については、「文字列の Windows データ型を この型は、次のように WinNT.h で宣言されています。
|
||
PCWSTR |
16 ビット Unicode 文字の定数 null で終わる文字列へのポインター。 詳細については、「フォントで使用される文字セットの この型は、次のように WinNT.h で宣言されています。
|
||
PDWORD |
DWORDへのポインター。 この型は WinDef.h で次のように宣言されています。
|
||
PDWORDLONG |
DWORDLONGへのポインター。 この型は、次のように WinNT.h で宣言されています。
|
||
PDWORD_PTR |
DWORD_PTRへのポインター。 この型は BaseTsd.h で次のように宣言されています。
|
||
PDWORD32 |
DWORD32へのポインター。 この型は BaseTsd.h で次のように宣言されています。
|
||
PDWORD64 |
DWORD64へのポインター。 この型は BaseTsd.h で次のように宣言されています。
|
||
PFLOAT |
FLOATへのポインター。 この型は WinDef.h で次のように宣言されています。
|
||
PHALF_PTR |
HALF_PTRへのポインター。 この型は BaseTsd.h で次のように宣言されています。
|
||
PHANDLE |
HANDLEへのポインター。 この型は、次のように WinNT.h で宣言されています。
|
||
PHKEY |
HKEYへのポインター。 この型は WinDef.h で次のように宣言されています。
|
||
PINT |
INTへのポインター。 この型は WinDef.h で次のように宣言されています。
|
||
PINT_PTR |
INT_PTRへのポインター。 この型は BaseTsd.h で次のように宣言されています。
|
||
PINT8 |
INT8へのポインター。 この型は BaseTsd.h で次のように宣言されています。
|
||
PINT16 |
INT16へのポインター。 この型は BaseTsd.h で次のように宣言されています。
|
||
PINT32 |
INT32へのポインター。 この型は BaseTsd.h で次のように宣言されています。
|
||
PINT64 |
INT64へのポインター。 この型は BaseTsd.h で次のように宣言されています。
|
||
PLCID |
LCIDへのポインター。 この型は、次のように WinNT.h で宣言されています。
|
||
PLONG |
LONGへのポインター。 この型は、次のように WinNT.h で宣言されています。
|
||
PLONGLONG |
LONGLONGへのポインター。 この型は、次のように WinNT.h で宣言されています。
|
||
PLONG_PTR |
LONG_PTRへのポインター。 この型は BaseTsd.h で次のように宣言されています。
|
||
PLONG32 |
LONG32へのポインター。 この型は BaseTsd.h で次のように宣言されています。
|
||
PLONG64 |
LONG64へのポインター。 この型は BaseTsd.h で次のように宣言されています。
|
||
POINTER_32 |
32 ビット ポインター。 32 ビット システムでは、これはネイティブ ポインターです。 64 ビット システムでは、これは切り捨てられた 64 ビット ポインターです。 この型は BaseTsd.h で次のように宣言されています。
|
||
POINTER_64 |
64 ビット ポインター。 64 ビット システムでは、これはネイティブ ポインターです。 32 ビット システムでは、これは符号拡張 32 ビット ポインターです。 高いポインター ビットの状態を想定しても安全ではないことに注意してください。 この型は BaseTsd.h で次のように宣言されています。
|
||
POINTER_SIGNED |
符号付きポインター。 この型は BaseTsd.h で次のように宣言されています。
|
||
POINTER_UNSIGNED |
符号なしポインター。 この型は BaseTsd.h で次のように宣言されています。
|
||
PSHORT |
SHORTへのポインター。 この型は、次のように WinNT.h で宣言されています。
|
||
PSIZE_T |
SIZE_Tへのポインター。 この型は BaseTsd.h で次のように宣言されています。
|
||
PSSIZE_T |
SSIZE_Tへのポインター。 この型は BaseTsd.h で次のように宣言されています。
|
||
PSTR |
8 ビット Windows (ANSI) 文字の null で終わる文字列へのポインター。 詳細については、「フォントで使用される文字セットの この型は、次のように WinNT.h で宣言されています。
|
||
PTBYTE |
TBYTEへのポインター。 この型は、次のように WinNT.h で宣言されています。
|
||
PTCHAR |
TCHARへのポインター。 この型は、次のように WinNT.h で宣言されています。
|
||
PTSTR |
UNICODE が定義されている場合は PWSTR、それ以外の場合は PSTR。 詳細については、「文字列の Windows データ型を この型は、次のように WinNT.h で宣言されています。
|
||
PUCHAR |
UCHARへのポインター。 この型は WinDef.h で次のように宣言されています。
|
||
PUHALF_PTR |
UHALF_PTRへのポインター。 この型は BaseTsd.h で次のように宣言されています。
|
||
PUINT |
UINTへのポインター。 この型は WinDef.h で次のように宣言されています。
|
||
PUINT_PTR |
UINT_PTRへのポインター。 この型は BaseTsd.h で次のように宣言されています。
|
||
PUINT8 |
UINT8へのポインター。 この型は BaseTsd.h で次のように宣言されています。
|
||
PUINT16 |
UINT16へのポインター。 この型は BaseTsd.h で次のように宣言されています。
|
||
PUINT32 |
UINT32へのポインター。 この型は BaseTsd.h で次のように宣言されています。
|
||
PUINT64 |
UINT64へのポインター。 この型は BaseTsd.h で次のように宣言されています。
|
||
PULONG |
ULONGへのポインター。 この型は WinDef.h で次のように宣言されています。
|
||
PULONGLONG |
ULONGLONGへのポインター。 この型は WinDef.h で次のように宣言されています。
|
||
PULONG_PTR |
ULONG_PTRへのポインター。 この型は BaseTsd.h で次のように宣言されています。
|
||
PULONG32 |
ULONG32へのポインター。 この型は BaseTsd.h で次のように宣言されています。
|
||
PULONG64 |
ULONG64へのポインター。 この型は BaseTsd.h で次のように宣言されています。
|
||
PUSHORT |
USHORTへのポインター。 この型は WinDef.h で次のように宣言されています。
|
||
PVOID |
任意の型へのポインター。 この型は、次のように WinNT.h で宣言されています。
|
||
PWCHAR |
WCHARへのポインター。 この型は、次のように WinNT.h で宣言されています。
|
||
PWORD |
WORDへのポインター。 この型は WinDef.h で次のように宣言されています。
|
||
PWSTR |
16 ビット Unicode 文字の null で終わる文字列へのポインター。 詳細については、「フォントで使用される文字セットの この型は、次のように WinNT.h で宣言されています。
|
||
QWORD |
64 ビット符号なし整数。 この型は次のように宣言されます。
|
||
SC_HANDLE |
サービス コントロール マネージャー データベースへのハンドル。 詳細については、「SCM ハンドル」を参照してください。 この型は WinSvc.h で次のように宣言されています。
|
||
SC_LOCK |
サービス コントロール マネージャー データベースへのロック。 詳細については、「SCM ハンドル」を参照してください。 この型は WinSvc.h で次のように宣言されています。
|
||
SERVICE_STATUS_HANDLE |
サービスの状態値へのハンドル。 詳細については、「SCM ハンドル」を参照してください。 この型は WinSvc.h で次のように宣言されています。
|
||
SHORT |
16 ビット整数。 範囲は -32768 ~ 32767 decimal です。 この型は、次のように WinNT.h で宣言されています。
|
||
SIZE_T |
ポインターが指すことができる最大バイト数。 ポインターの全範囲にまたがる必要があるカウントに使用します。 この型は BaseTsd.h で次のように宣言されています。
|
||
SSIZE_T |
SIZE_Tの署名付きバージョン。 この型は BaseTsd.h で次のように宣言されています。
|
||
TBYTE |
UNICODE が定義 この型は、次のように WinNT.h で宣言されています。
|
||
TCHAR |
UNICODE が定義 この型は、次のように WinNT.h で宣言されています。
|
||
UCHAR |
符号なし CHAR。 この型は WinDef.h で次のように宣言されています。
|
||
UHALF_PTR |
符号なし HALF_PTR。 ポインターと 2 つの小さなフィールドを含む構造体内で使用します。 この型は BaseTsd.h で次のように宣言されています。
|
||
UINT |
符号なし INT。 範囲は 0 から 10 進数4294967295です。 この型は WinDef.h で次のように宣言されています。
|
||
UINT_PTR |
符号なし INT_PTR。 この型は BaseTsd.h で次のように宣言されています。
|
||
UINT8 |
符号なし INT8。 この型は BaseTsd.h で次のように宣言されています。
|
||
UINT16 |
符号なし INT16。 この型は BaseTsd.h で次のように宣言されています。
|
||
UINT32 |
符号なし INT32。 範囲は 0 から 10 進数4294967295です。 この型は BaseTsd.h で次のように宣言されています。
|
||
UINT64 |
符号なし INT64。 範囲は 0 から 10 進数18446744073709551615です。 この型は BaseTsd.h で次のように宣言されています。
|
||
ULONG |
符号なし LONG。 範囲は 0 から 10 進数4294967295です。 この型は WinDef.h で次のように宣言されています。
|
||
ULONGLONG |
64 ビット符号なし整数。 範囲は 0 から 10 進数18446744073709551615です。 この型は、次のように WinNT.h で宣言されています。
|
||
ULONG_PTR |
符号なし LONG_PTR。 この型は BaseTsd.h で次のように宣言されています。
|
||
ULONG32 |
符号なし LONG32。 範囲は 0 から 10 進数4294967295です。 この型は BaseTsd.h で次のように宣言されています。
|
||
ULONG64 |
符号なし LONG64。 範囲は 0 から 10 進数18446744073709551615です。 この型は BaseTsd.h で次のように宣言されています。
|
||
UNICODE_STRING |
Unicode 文字列。 この型は、次のように Winternl.h で宣言されています。
|
||
USHORT |
符号なし SHORT。 範囲は 0 から 65535 10 進数です。 この型は WinDef.h で次のように宣言されています。
|
||
USN |
更新シーケンス番号 (USN)。 この型は、次のように WinNT.h で宣言されています。
|
||
VOID |
任意の型。 この型は、次のように WinNT.h で宣言されています。
|
||
WCHAR |
16 ビット Unicode 文字。 詳細については、「フォントで使用される文字セットの この型は、次のように WinNT.h で宣言されています。
|
||
WINAPI |
システム関数の呼び出し規則。 この型は WinDef.h で次のように宣言されています。
|
||
WORD |
16 ビット符号なし整数。 範囲は 0 から 65535 10 進数です。 この型は WinDef.h で次のように宣言されています。
|
||
WPARAM |
メッセージ パラメーター。 この型は WinDef.h で次のように宣言されています。
|
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント |
Windows XP [デスクトップ アプリのみ] |
サポートされている最小サーバー |
Windows Server 2003 [デスクトップ アプリのみ] |
ヘッダ |
|