C#与Windows API时的数据类型对应

    技术2025-08-15  16

    C++           输入输出    C# ================================== char chr[255]   O    StringBuilder KCA_DIR            I    int LPCSTR             I    string int                        I    int LPSTR              O    StringBuilder int*                      O    out int DWORD              I    int DWORD*          O    out int BOOL                 I    bool Rc_DBMgr          I    IntPtr long*                  O    out long

     

     

    API与C#的数据类型对应关系表 API数据类型类型描述C#类型API数据类型类型描述C#类型WORD16位无符号整数ushortCHAR字符charLONG32位无符号整数intDWORDLONG64位长整数longDWORD32位无符号整数uintHDC设备描述表句柄intHANDLE句柄,32位整数intHGDIOBJGDI对象句柄intUINT32位无符号整数uintHINSTANCE实例句柄intBOOL32位布尔型整数boolHWM窗口句柄intLPSTR指向字符的32位指针stringHPARAM32位消息参数intLPCSTR指向常字符的32位指针StringLPARAM32位消息参数intBYTE字节byteWPARAM32位消息参数int

     

     

     

    Wtypes.h 中的非托管类型

    非托管 C 语言类型

    托管类名

    说明

    HANDLE

    void*

    System.IntPtr

    32 位

    BYTE

    unsigned char

    System.Byte

    8 位

    SHORT

    short

    System.Int16

    16 位

    WORD

    unsigned short

    System.UInt16

    16 位

    INT

    int

    System.Int32

    32 位

    UINT

    unsigned int

    System.UInt32

    32 位

    LONG

    long

    System.Int32

    32 位

    BOOL

    long

    System.Int32

    32 位

    DWORD

    unsigned long

    System.UInt32

    32 位

    ULONG

    unsigned long

    System.UInt32

    32 位

    CHAR

    char

    System.Char

    用 ANSI 修饰。

    LPSTR

    char*

    System.String 或 System.StringBuilder

    用 ANSI 修饰。

    LPCSTR

    Const char*

    System.String 或 System.StringBuilder

    用 ANSI 修饰。

    LPWSTR

    wchar_t*

    System.String 或 System.StringBuilder

    用 Unicode 修饰。

    LPCWSTR

    Const wchar_t*

    System.String 或 System.StringBuilder

    用 Unicode 修饰。

    FLOAT

    Float

    System.Single

    32 位

    DOUBLE

    Double

    System.Double

    64 位

    最新回复(0)