8个字节的数组,怎么把高4位和低4位互换一下,有没有简单的方法?
00 00 05 5A 00 00 00 00 --> 00 00 00 00 00 00 05 5A 

解决方案 »

  1.   

    a[],b[];
    for(int i=0;i++;i<=7)
    {
    t=i;
    if(t+4>7)
        t=t-8;
    b[i]=a[t+4];
    }
    a[]=b[];
      

  2.   

    int tmp = 0;
    int[] arr = new int[8];   //原数组
    for(int i=0;i<4;++i)
    {
        tmp = arr[i];
        arr[i] = arr[i+4];
        arr[i+4] = tmp;
    }
      

  3.   

    Array.Copy or Buffer.BlockCopy
    后者效率高
      

  4.   

    VMM都出手了.给楼主一个参考 int[] source = new int[] { 1, 2, 3, 4, 5, 6, 7, 8 };int[] result = new int[8];
    Array.Copy(source, 0, result, 4, 4);
    Array.Copy(source, 4, result, 0, 4);