4各种语言数据类型对应关系
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
各种语言数据类型对应关系
/*==================================================================== =========(VC函数)
函数名:SN_MakeGuestCard
功能描述:发行客人卡
输入参数:RoomNo--柜号:1~65535
IssuedTime--发卡时间:年月日时分秒,字符串格式"YYYY-MM-DD hh:mm:ss"
AllowHours--允许使用的小时数,0~1000,0表示不限时
GuestFlags--客人卡标志
输出参数:Rom--卡号:16个字符
例子:RoomNo=1,IssuedTime="2010-01-0112:30:00",AllowHours=12,GuestFlags=0返回值:错误类型
====================================================================== =======*/
int__stdcall SN_MakeGuestCard(char*Rom,unsigned int RoomNo,char*IssuedTime,unsigned int AllowHours,unsigned int GuestFlags);
C#调用C++的DLL搜集整理的所有数据类型转换方式时间:2011-03-1112:35:32来源:网络整理作者:未知点击:62次本以为这篇搜集整理的代码会是很不错的文章,花了一天时间,搜索到最后居然出来一篇叫做"C#与C++数据类型对照表"的文章.几乎囊括掉和大部分的数据了,太打击我了.本文中有部分的数据没有测试.也有一些不错的是看了
本以为这篇搜集整理的代码会是很不错的文章,花了一天时间,搜索到最后居然出来一篇叫做"C#与C++数据类型对照表"的文章.几乎囊括掉和大部分的数据了,太打击我了.本文中有部分的数据没有测试.也有一些不错的是看了上百篇网文对比整理得来的.希望有帮助.
//C++中的DLL函数原型为
//extern"C"__declspec(dllexport)bool方法名一(const char*变量名1,unsigned char*变量名2)
//extern"C"__declspec(dllexport)bool方法名二(const unsigned char*变量名1, char*变量名2)
//C#调用C++的DLL搜集整理的所有数据类型转换方式,可能会有重复或者多种方案,自己多测试
//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变量名