byte[] GetErrorTemp = compareArr_Reply(data, 3, ElecThreshold, 0, 36);
为什么这句执行后GetErrorTemp 变量的值是null?
下面是compareArr_Reply函数的具体内容:
public static byte[] compareArr_Reply(byte[] arr1, int addr1, byte[] arr2, int addr2, int len)
{
List<byte> retList = new List<byte>();
int Error_Num = 0;
if (arr1.Length >= len - addr1 && arr2.Length >= len - addr2)
{
for (var i = 0; i < len; i++)
{
if (arr1[i + addr1] != arr2[i + addr2])
{
Error_Num++;
retList.Add((byte)i);
}
}
}
else
{
retList.Add(0xFF);
}
byte[] ret = new byte[retList.Count];
ret = retList.ToArray();
return ret;//此时ret = {0,12}
}