当前位置:编程学习 > C#/ASP.NET >>

指针与数组

麻烦问下各位:
C#里如何实现将UINT32[]数组赋值给PUINT32? --------------------编程问答-------------------- 补充下:不要用循环,最好能实现类似C++里的memcpy功能 --------------------编程问答-------------------- PUINT32 是个什么东西嘛 --------------------编程问答-------------------- 再补充下,我这个主要目的是实现将一个UCHAR类型数组转换为UINT32类型数组指针。
例如:TypeTrans( PUINT32 pInt32Data, UCHAR[] cData, int iTransLen )
(其中PUINT32 *UINT32)
这种转换有两种方法:
1. BlockCopy的输入参数都为数组,所以需要将数组转换为指针。
2. Marshal::Copy的输入参数有IntPtr,但是IntPtr如何转换为PUINT32?
由于数据量很大,所以不要用循环。 --------------------编程问答-------------------- uint[] s1 = new uint[10];
fixed(uint* ps1 = &s1[0])
{

} --------------------编程问答--------------------
[DllImport("Kernel32.dll", EntryPoint = "RtlMoveMemory", SetLastError = true)]
internal static extern void CopyMemory(byte* Dest, byte* src, int Length);
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,