DLL 中的函数 nResult=Elitel_Transmit(&mData);
因为其中参数mData为地址,所以在C#中写时用下边的代码将其放在在一个地址ptr中
IntPtr ptr = Marshal.AllocHGlobal(Marshal.SizeOf(mData));
Marshal.StructureToPtr(mData, ptr, false);
nResult=Elitel_Transmit(ptr);
memset函数
DLL 中函数
Catbee_Apdu mData;
memset(&mData,0,sizeof(mData));
C# Catbee_Apdu为结构体
Catbee_Apdu mData;
mData=new Catbee_Apdu();//等于memset(&mData,0,sizeof(mData));
数组使用memset(sCurCardID, 0, sizeof(sCurCardID));其中sCurCardID为数组 时
可用Array.Clear(sCurCardID,0,8);//数组长度为8 UInt32 sCurCardID=new UInt32[8];
memcpy(sCurCardID, mLinkData.aCardID, 8);
在C#中写成Array.Copy(mLinkData.aCardID, sCurCardID, 8);
未经测试不一定好使