如何理解BitConverter.GetBytes(byte)?

byte a = 0;

byte[] arr = BitConverter.GetBytes(a);

请问这种lrc代码应该如何理解?把1个字节变为2个字节 到底有什么用?

你应先了解基础数据类型是如何使用二进制表示的。

应该是我没表达明白,实际上GetBytes没有一个byte参数的重载,而是将byte转成了int16,但为什么要传一个byte?我就是不明白为什么要这样,这样写的话会得到一个包含2个元素的数组,其中高8位是这个byte,低8位就是0,这到底有什么意义?

既然没有 byte 类型参数的重载,那么函数会自动将 byte 转换为最接近的相容的数据类型(int16)再处理。

也就是说,凡是 int16 类型(不限于,int32、int64也可以)可以出现的地方,也可以使用 byte 类型,因为这些类型都相容与 byte。

byte 向上转换为short

看业务需求吧,数据解析增加安全性,规律

发布了122 篇原创文章 · 获赞 2 · 访问量 5216

猜你喜欢

转载自blog.csdn.net/liuji0517/article/details/105324069