background image

c#与 C++类型转换,网摘 2011-12-08 8:33//c++:HANDLE(void   *)          ---- 
c#:System.IntPtr        

//c++:Byte(unsigned   char)     ----    c#:System.Byte         
//c++:SHORT(short)              ----    c#:System.Int16         

//c++:WORD(unsigned   short)    ----    c#:System.UInt16        
 //c++:INT(int)                 ----    c#:System.Int16        

//c++:INT(int)                  ----    c#:System.Int32         
//c++:UINT(unsigned   int)      ----    c#:System.UInt16        

//c++:UINT(unsigned   int)      ----    c#:System.UInt32        
//c++:LONG(long)                ----    c#:System.Int32         

//c++:ULONG(unsigned   long)    ----    c#:System.UInt32         
//c++:DWORD(unsigned   long)    ----    c#:System.UInt32         

//c++:DECIMAL                   ----    c#:System.Decimal         
//c++:BOOL(long)                ----    c#:System.Boolean         

//c++:CHAR(char)                ----    c#:System.Char         
//c++:LPSTR(char   *)           ----    c#:System.String         

//c++:LPWSTR(wchar_t   *)       ----    c#:System.String         
//c++:LPCSTR(const   char   *)  ----    c#:System.String         

//c++:LPCWSTR(const   wchar_t   *)      ----    c#:System.String         
//c++:PCAHR(char   *)   ----    c#:System.String         

//c++:BSTR              ----    c#:System.String         
//c++:FLOAT(float)      ----    c#:System.Single         

//c++:DOUBLE(double)    ----    c#:System.Double         
//c++:VARIANT           ----    c#:System.Object         

//c++:PBYTE(byte   *)   ----    c#:System.Byte[]         
//c++:BSTR      ----    c#:StringBuilder        

//c++:LPCTSTR   ----    c#:StringBuilder        
//c++:LPCTSTR   ----    c#:string        

//c++:LPTSTR    ----    c#:[MarshalAs(UnmanagedType.LPTStr)] string         
//c++:LPTSTR 

    

输出变量名

----    c#:StringBuilder 

        

输出变量名

//c++:LPCWSTR   ----    c#:IntPtr        
//c++:BOOL      ----    c#:bool           

//c++:HMODULE   ----    c#:IntPtr            
//c++:HINSTANCE ----    c#:IntPtr         

//c++:

    

结构体

----    c#:public struct 结构体{};         

//c++:

 

结构体

**

   

变量名

----    c#:out 

   

变量名

//C#

        

中提前申明一个结构体实例化后的变量名

//c++:

 

结构体

&

    

变量名

----    c#:ref 

 

                 

结构体 变量名

//c++:WORD      ----    c#:ushort        
//c++:DWORD     ----    c#:uint        

//c++:DWORD     ----    c#:int        
//c++:UCHAR     ----    c#:int        

//c++:UCHAR     ----    c#:byte        
//c++:UCHAR*    ----    c#:string        

//c++:UCHAR*    ----    c#:IntPtr        
//c++:GUID      ----    c#:Guid        

//c++:Handle    ----    c#:IntPtr        
//c++:HWND      ----    c#:IntPtr        

//c++:DWORD     ----    c#:int        
//c++:COLORREF  ----    c#:uint        

//c++:unsigned char     ----    c#:byte        
//c++:unsigned char *   ----    c#:ref byte        

//c++:unsigned char *   ----    c#:[MarshalAs(UnmanagedType.LPArray)] byte[] 
//c++:unsigned char *   ----    c#:[MarshalAs(UnmanagedType.LPArray)] Intptr 

//c++:unsigned char &   ----    c#:ref byte        
//c++:unsigned char 

      

变量名

----    c#:byte 

        

变量名

//c++:unsigned short 

     

变量名

----    c#:ushort 

        

变量名

//c++:unsigned int 

       

变量名

----    c#:uint 

        

变量名