BitConverter.ToUInt16(数组, 1);

byte[] bytes={10,138,19};

 BitConverter.ToUInt16(bytes, 1);

在内存中,数值型数据次序与数组是相反的,即低字节在前面,高字节在后面。

在内存中是(用 16 进制表示) a, 8a ,13,当把这2个字节(从下标为1开始)当成 int16 时,为 138a(十进制的 5002).

总结:也就是从数组中取下标为1以后的两个字节,先各字节转换为16进制,然后倒序组合,转换为10进制。

(十进制  -> 十六进制   -> 倒序  -> 十进制)

同理:ToUInt32 取4个字节。ToUInt64 取8个字节。以上均为无符号(无负数范围)

发布了26 篇原创文章 · 获赞 8 · 访问量 5794

猜你喜欢

转载自blog.csdn.net/LM514104/article/details/101068518
今日推荐