还是 char 和 long不过C#的char是双字节的

解决方案 »

  1.   

    Platform SDK: 
    The long keyword designates a 32-bit integer.
      

  2.   

    char和longlong 关键字表示一种整型,该类型根据下表显示的大小和范围存储值.
    范围大小 -9,223,372,036,854,775,808 到 9,223,372,036,854,775,807 有符号 64
      

  3.   

    下表列出了在 Win32 API(在 Wtypes.h 中列出)和 C 样式函数中使用的数据类型。许多非托管库包含将这些数据类型作为参数传递并返回值的函数。第三列列出了在托管代码中使用的相应的 .NET Framework 内置值类型或类。某些情况下,您可以用大小相同的类型替换此表中列出的类型。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 位