如,申明了两个byte数组
byte[] a = new byte[20];
byte[] b = new byte[4];
我想把a的0~3的字节拷贝到b中,除了
b[0] = a[0] 之类的方法,有冇可以速度快一点的办法?

解决方案 »

  1.   

    使用 数组的 CopyTo 方法
    byte [] x = new byte [8];
    byte [] y = new byte [8];x.CopyTo(y, 0);Array.CopyTo 方法  [C#]请参见
    Array 类 | Array 成员 | System 命名空间 | Array 成员(Visual J# 语法) | C++ 托管扩展编程 
    语言
    C#将当前一维 Array 的所有元素复制到指定的一维 Array 中。重载列表
    将当前一维 Array 的所有元素复制到指定的一维 Array 中(从指定的目标 Array 索引开始)。索引指定为 32 位整数。受 .NET Framework 精简版的支持。[C#] public virtual void CopyTo(Array, int);
    将当前一维 Array 的所有元素复制到指定的一维 Array 中(从指定的目标 Array 索引开始)。索引指定为 64 位整数。
    [C#] public virtual void CopyTo(Array, long);
      

  2.   

    Array.CopyTo注意:此函数被n次重载,其中就有你想要的!查MSDN吧!
      

  3.   

    可以在unsafe上下文使用指针操作,这样不用检查数组越界的情况,应该最快