代码之家  ›  专栏  ›  技术社区  ›  Vaccano

如何将两个字节“相加”

  •  1
  • Vaccano  · 技术社区  · 14 年前

    我有一个奇怪的场景(参见 this answer

    我现在有一个控件的实例,它的宽度大于256。如何将这两个数字相加?

    例如:

    • 2+0不是2,因为2是高字节(或者可能是低字节,它是2…)

    我说得通吗?如果是的话,我怎样才能在C#中做这种加法呢?


    更新:很抱歉,这个问题让人困惑。我想我知道了。请看下面我的答案。

    3 回复  |  直到 7 年前
        1
  •  2
  •   Falcz Sergey Teplyakov    4 年前

    乘法的方法非常清楚,但在按位字中并不常见,而位转换器的方法采用字节数组,这在许多情况下并不方便。

    最常见的(也是最简单的)方法是使用位运算符:

    var r = (high << 8) | low;
    

    还记得吗 byte ordering 因为哪个字节高哪个字节低并不总是很明显。

        2
  •  2
  •   Daniel Beck TheVyom    14 年前

    256 * high + low
    

    ?

        3
  •  1
  •   Vaccano    14 年前