可能用数组可以吧,char*用string 应该可以

解决方案 »

  1.   

    根据不同的情况而定,比如Handle就可以用int来,也可以用IntPtr。
      

  2.   

    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 位 
      

  3.   

    ms-help://MS.MSDNQTR.2003FEB.2052/cpguide/html/cpconDefaultMarshalingForStrings.htm