C#/C++ 中字节数组与int类型转换

1.C#中int和byte[]转换:

/// <summary>
/// 把int32类型的数据转存到4个字节的byte数组中
/// </summary>
/// <param name="m">int32类型的数据
/// <param name="arry">4个字节大小的byte数组
public static bool ConvertIntToByteArray(Int32 m, ref byte[] arry)
{
    if (arry == null) return false;
    if (arry.Length < 4) return false;
    arry[0] = (byte)(m & 0xFF);
    arry[1] = (byte)((m & 0xFF00) >> 8);
    arry[2] = (byte)((m & 0xFF0000) >> 16);
    arry[3] = (byte)((m >> 24) & 0xFF);
    return true;
}

/// <summary>
/// 把byte数组中的前4个字节转换为int32类型的数据
/// </summary>
public static int ConvertByteArrayToInt(byte[] arry)
{
    return BitConverter.ToInt32(arry, 0);
}

 

2.C++中byte[]与int类型转换

//int --> BYTE[]:

int data = 0xFFFFFFFF;
unsigned char buf[4];
 
memcpy(buf, &data, sizeof(int));

//BYTE[] --> int :

memcpy(&data, buf, 4);

 

 

  

posted @ 2014-08-31 22:24  平民总有崛起的时候  阅读(5694)  评论(1编辑  收藏  举报