前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >C#2C++数据类型对照

C#2C++数据类型对照

作者头像
Pulsar-V
发布2019-03-12 17:06:54
9040
发布2019-03-12 17:06:54
举报
文章被收录于专栏:Pulsar-VPulsar-V

API数据类型对应关系表

API数据类型

类型描述

C#类型

API数据类型

类型描述

C#类型

WORD

16位无符号整数

ushort

CHAR

字符

char

LONG

32位无符号整数

int

DWORDLONG

64位长整数

long

DWORD

32位无符号整数

uint

HDC

设备描述表句柄

int

HANDLE

句柄,32位整数

int

HGDIOBJ

GDI对象句柄

int

UINT

32位无符号整数

uint

HINSTANCE

实例句柄

int

BOOL

32位布尔型整数

bool

HWM

窗口句柄

int

LPSTR

指向字符的32位指针

string

HPARAM

32位消息参数

int

LPCSTR

指向常字符的32位指针

String

LPARAM

32位消息参数

int

BYTE

字节

byte

WPARAM

32位消息参数

int

基本数据类型

C++

C#

WORD

ushort

DWORD

uint

UCHAR

int/byte 大部分情况都可以使用int代替,而如果需要严格对齐的话则应该用bytebyte

UCHAR*

string/IntPtr

unsigned char*

[MarshalAs(UnmanagedType.LPArray)]byte[]/?(Intptr)

char*

string

LPCTSTR

string

LPTSTR

[MarshalAs(UnmanagedType.LPTStr)] string

long

int

ulong

uint

Handle

IntPtr

HWND

IntPtr

void*

IntPtr

int

int

int*

ref int

*int

IntPtr

unsigned int uint

COLORREF

uint

BOOL

System.Int32

BOOLEAN

System.Int32

BYTE

System.UInt16

CHAR

System.Int16

COLORREF

System.UInt32

DWORD

System.UInt32

DWORD32

System.UInt32

DWORD64

System.UInt64

FLOAT

System.Float

HACCEL

System.IntPtr

HANDLE

System.IntPtr

HBITMAP

System.IntPtr

HBRUSH

System.IntPtr

HCONV

System.IntPtr

HCONVLIST

System.IntPtr

HCURSOR

System.IntPtr

HDC

System.IntPtr

HDDEDATA

System.IntPtr

HDESK

System.IntPtr

HDROP

System.IntPtr

HDWP

System.IntPtr

HENHMETAFILE

System.IntPtr

HFILE

System.IntPtr

HFONT

System.IntPtr

HGDIOBJ

System.IntPtr

HGLOBAL

System.IntPtr

HHOOK

System.IntPtr

HICON

System.IntPtr

HIMAGELIST

System.IntPtr

HIMC

System.IntPtr

HINSTANCE

System.IntPtr

HKEY

System.IntPtr

HLOCAL

System.IntPtr

HMENU

System.IntPtr

HMETAFILE

System.IntPtr

HMODULE

System.IntPtr

HMONITOR

System.IntPtr

HPALETTE

System.IntPtr

HPEN

System.IntPtr

HRGN

System.IntPtr

HRSRC

System.IntPtr

HSZ

System.IntPtr

HWINSTA

System.IntPtr

HWND

System.IntPtr

INT

System.Int32

INT32

System.Int32

INT64

System.Int64

LONG

System.Int32

LONG32

System.Int32

LONG64

System.Int64

LONGLONG

System.Int64

LPARAM

System.IntPtr

LPBOOL

System.Int16[]

LPBYTE

System.UInt16[]

LPCOLORREF

System.UInt32[]

LPCSTR

System.String

LPCTSTR

System.String

LPCVOID

System.UInt32

LPCWSTR

System.String

LPDWORD

System.UInt32[]

LPHANDLE

System.UInt32

LPINT

System.Int32[]

LPLONG

System.Int32[]

LPSTR

System.String

LPTSTR

System.String

LPVOID

System.UInt32

LPWORD

System.Int32[]

LPWSTR

System.String

LRESULT

System.IntPtr

PBOOL

System.Int16[]

PBOOLEAN

System.Int16[]

PBYTE

System.UInt16[]

PCHAR

System.Char[]

PCSTR

System.String

PCTSTR

System.String

PCWCH

System.UInt32

PCWSTR

System.UInt32

PDWORD

System.Int32[]

PFLOAT

System.Float[]

PHANDLE

System.UInt32

PHKEY

System.UInt32

PINT

System.Int32[]

PLCID

System.UInt32

PLONG

System.Int32[]

PLUID

System.UInt32

PSHORT

System.Int16[]

PSTR

System.String

PTBYTE

System.Char[]

PTCHAR

System.Char[]

PTSTR

System.String

PUCHAR

System.Char[]

PUINT

System.UInt32[]

PULONG

System.UInt32[]

PUSHORT

System.UInt16[]

PVOID

System.UInt32

PWCHAR

System.Char[]

PWORD

System.Int16[]

PWSTR

System.String

REGSAM

System.UInt32

SC_HANDLE

System.IntPtr

SC_LOCK

System.IntPtr

SHORT

System.Int16

SIZE_T

System.UInt32

SSIZE_

System.UInt32

TBYTE

System.Char

TCHAR

System.Char

UCHAR

System.Byte

UINT

System.UInt32

UINT32

System.UInt32

UINT64

System.UInt64

ULONG

System.UInt32

ULONG32

System.UInt32

ULONG64

System.UInt64

ULONGLONG

System.UInt64

USHORT

System.UInt16

WORD

System.UInt16

WPARAM

System.IntPtr

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 位

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018/07/06 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • API数据类型对应关系表
  • 基本数据类型
  • Wtypes.h 中的非托管类型
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档