関係のC#コールWINDWOSのAPI、有用な(RPM)に対応するC ++やC#のデータ型

C ++输入输出C# 
==================================
char型のCHR [255] OのStringBuilder
KCA_DIR私はint型
LPCSTR Iを文字列
int型I int型
LPSTR O StringBuilderの
int型* OアウトINT
DWORDは、私はint型
DWORD * Oうちのint
BOOL I BOOL
Rc_DBMgr IのIntPtr
長い* Oアウト長いです

 

 

APIとC#のデータ型の対応表
APIデータ型 タイプ説明 C#型 APIデータ型 タイプ説明 C#型
ワード 16ビット符号なし整数 USHORT CHAR 文字 CHAR
長いです 32ビット符号なし整数 int型 DWORDLONG 64ビット長の整数 長いです
DWORD 32ビット符号なし整数 UINT HDC デバイスコンテキストハンドル int型
ハンドル ハンドル、32ビット整数 int型 HGDIOBJ GDIオブジェクトのハンドル int型
UINT 32ビット符号なし整数 UINT HINSTANCE インスタンスハンドル int型
BOOL 32ビット整数ブール BOOL プレミアム ウィンドウハンドル int型
LPSTR 32ビット・ポインタのポインティング文字 HPARAM 32ビットのメッセージパラメータ int型
LPCSTR 多くの場合、文字を指している32ビットのポインタ LPARAM 32ビットのメッセージパラメータ int型
バイト バイト バイト WPARAM 32ビットのメッセージパラメータ int型

 

 

Wtypes.h  管理されていないタイプ

アンマネージド Cの  言語タイプ

マネージドクラス名

説明

ハンドル

無効*

System.IntPtr

32 

バイト

unsigned char型

System.Byte

ショート

ショート

System.Int16

16 

ワード

符号なしshort

System.UInt16

16 

INT

int型

可能System.Int32

32 

UINT

unsigned int型

可能System.UInt32

32 

長いです

長いです

可能System.Int32

32 

BOOL

長いです

可能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の  修正。

浮く

浮く

System.Single

32 

ダブル

ダブル

System.Double

64 

ます。https://www.cnblogs.com/baoposhou/archive/2011/10/17/2215490.htmlで再現

おすすめ

転載: blog.csdn.net/weixin_33895604/article/details/93320759