C++数据类型与C#对应关系 c#调用WINDWOS API时,非常有用(转)

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字符char
LONG32位无符号整数intDWORDLONG64位长整数long
DWORD32位无符号整数uintHDC设备描述表句柄int
HANDLE句柄,32位整数intHGDIOBJGDI对象句柄int
UINT32位无符号整数uintHINSTANCE实例句柄int
BOOL32位布尔型整数boolHWM窗口句柄int
LPSTR指向字符的32位指针stringHPARAM32位消息参数int
LPCSTR指向常字符的32位指针StringLPARAM32位消息参数int
BYTE字节byteWPARAM32位消息参数int

 

 

Wtypes.h 中的非托管类型

非托管 C 语言类型

托管类名

说明

HANDLE

void*

System.IntPtr

32 

BYTE

unsigned char

System.Byte

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 

posted @ 2011-10-17 15:56  Allen Zhang  阅读(457)  评论(0编辑  收藏  举报