请问各位该如何转换成c#代码?
void Reverse_Sign(unsigned char * sign, unsigned char ** re_sign,UINT len)
{
*re_sign = (unsigned char *)malloc(len);
for (UINT i = 0 ; i < len ; i++)
{
memcpy(*re_sign+i ,sign+len-i-1,1);
}
}

解决方案 »

  1.   

    void Reverse_Sign(byte[] sign, byte[][] re_sign,uint len)
    {
        for (uint i = 0 ; i < len ; i++)
        {
            re_sign[i] = sign[len - i - 1];
        }
    }未调试验证。
      

  2.   

    void Reverse_Sign(byte[] sign, byte[][] re_sign,uint len)
    {
        for (uint i = 0 ; i < len ; i++)
        {
            re_sign[i][0] = sign[len - i - 1];
        }
    }稍微修改一点
      

  3.   

    void Reverse_Sign(byte[] sign, byte[][] re_sign, uint len)
    {
      re_sign = new byte[1][];
      re_sign[0] = new byte[len];
      for (uint i = 0; i < len; i++)
      {
        re_sign[0][i] = sign[len - i - 1];
      }
    }
      

  4.   

    byte[] Reverse_Sign(byte[] bytes)
    {
        return Encoding.Convert(Encoding.Unicode, new UnicodeEncoding(true, false), bytes);
    }
      

  5.   

    class Program
    {
      static void Reverse_Sign(byte[] sign, out byte[][] re_sign, uint len)
      {
        re_sign = new byte[1][];
        re_sign[0] = new byte[len];
        for (uint i = 0; i < len; i++)
        {
          re_sign[0][i] = sign[len - i - 1];
        }
      }  static void Main()
      {
        byte[] s = new byte[]{11,22,33,44,55};
        byte[][] r;
        Reverse_Sign(s, out r, (uint)s.Length);
        foreach (byte b in r[0])
        {
          System.Console.WriteLine(b);
        }
      }
    }