| 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#类型 |
| 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 |
| 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 位 |
STDINT.H
typedef signed char int8_t;
typedef signed short int int16_t;
typedef signed int int32_t;
typedef signed __INT64 int64_t;
/* exact-width unsigned integer types */
typedef unsigned char uint8_t;
typedef unsigned short int uint16_t;
typedef unsigned int uint32_t;
typedef unsigned __INT64 uint64_t;
/* 7.18.1.2 / / smallest type of at least n bits
/ / minimum-width signed integer types */
typedef signed char int_least8_t;
typedef signed short int int_least16_t;
typedef signed int int_least32_t;
typedef signed __INT64 int_least64_t;
/* minimum-width unsigned integer types */
typedef unsigned char uint_least8_t;
typedef unsigned short int uint_least16_t;
typedef unsigned int uint_least32_t;
typedef unsigned __INT64 uint_least64_t;
/* 7.18.1.3 /
/ fastest minimum-width signed integer types */
typedef signed int int_fast8_t;
typedef signed int int_fast16_t;
typedef signed int int_fast32_t;
typedef signed __INT64 int_fast64_t;
/* fastest minimum-width unsigned integer types */
typedef unsigned int uint_fast8_t;
typedef unsigned int uint_fast16_t;
typedef unsigned int uint_fast32_t;
typedef unsigned __INT64 uint_fast64_t;
typedef signed __INT64 intptr_t;
typedef unsigned __INT64 uintptr_t;
.