The following table lists data types used in the Win32 API (listed in Wtypes.h) and C-style functions. Many unmanaged libraries contain functions that pass these data types as parameters and return values. The third column lists the corresponding .NET Framework built-in value type or class that you use in managed code. In some cases, you can substitute a type of the same size for the type listed in the table.
Unmanaged type in Wtypes.h Unmanaged C language type Managed class name Description
HANDLE void* System.IntPtr 32 bits
BYTE unsigned char System.Byte 8 bits
SHORT short System.Int16 16 bits
WORD unsigned short System.UInt16 16 bits
INT int System.Int32 32 bits
UINT unsigned int System.UInt32 32 bits
LONG long System.Int32 32 bits
BOOL long System.Int32 32 bits
DWORD unsigned long System.UInt32 32 bits
ULONG unsigned long System.UInt32 32 bits
CHAR char System.Char Decorate with ANSI.
LPSTR char* System.String or System.StringBuilder Decorate with ANSI.
LPCSTR Const char* System.String or System.StringBuilder Decorate with ANSI.
LPWSTR wchar_t* System.String or System.StringBuilder Decorate with Unicode.
LPCWSTR Const wchar_t* System.String or System.StringBuilder Decorate with Unicode.
FLOAT Float System.Single 32 bits
DOUBLE Double System.Double 64 bits
For corresponding types in Visual Basic .NET, C#, and the Managed Extensions for C++, see the Introduction to the .NET Framework Class Library.
Unmanaged type in Wtypes.h Unmanaged C language type Managed class name Description
HANDLE void* System.IntPtr 32 bits
BYTE unsigned char System.Byte 8 bits
SHORT short System.Int16 16 bits
WORD unsigned short System.UInt16 16 bits
INT int System.Int32 32 bits
UINT unsigned int System.UInt32 32 bits
LONG long System.Int32 32 bits
BOOL long System.Int32 32 bits
DWORD unsigned long System.UInt32 32 bits
ULONG unsigned long System.UInt32 32 bits
CHAR char System.Char Decorate with ANSI.
LPSTR char* System.String or System.StringBuilder Decorate with ANSI.
LPCSTR Const char* System.String or System.StringBuilder Decorate with ANSI.
LPWSTR wchar_t* System.String or System.StringBuilder Decorate with Unicode.
LPCWSTR Const wchar_t* System.String or System.StringBuilder Decorate with Unicode.
FLOAT Float System.Single 32 bits
DOUBLE Double System.Double 64 bits
For corresponding types in Visual Basic .NET, C#, and the Managed Extensions for C++, see the Introduction to the .NET Framework Class Library.
Win32 API 数据类型映射
本文列举了 Win32 API 中的数据类型及其在 C 语言中的表示形式,并提供了这些类型在 .NET Framework 中对应的内置值类型或类。这对于在不同编程环境中使用这些类型的开发者尤其有用。
6056

被折叠的 条评论
为什么被折叠?



