对于Int64类型的值,左移操作在将值中的第七个字节移位后返回负值

时间:2015-03-20 08:58:01

标签: c#-4.0

对Int64类型的值进行左移操作,并在第7个字节移位后变为负值。这些是用于第4,5和第6字节的值222,157和128剩余字节为零。它在计算器中工作正常,但在程序中没有。请更正代码中是否有任何错误,我正在使用64位机器。

我的代码是这样的。

int value = 0;
 for (int i = 0; i < 8; i++)
 {
      value <<= 8;
      value |= (byte)messageStream.ReadByte();
 }       

0 个答案:

没有答案