日期:2014-05-18  浏览次数:21065 次

C#中取整数的高字节和低字节
public int GetHighWord(int intval)
  { 
  return (intval & (0xffff << 16));
  }
  //取一整数的高字节
  public int GetLowWord(int intval)
  { 
  return (intval & 0x0000ffff);
  }
  //取一整数的低字节

这样写的函数有没有问题,为什么我验证后老是不对,还有就是想问一问,整数的高、低字节是不是结果就应该是1个数字啊?在线等待高人回答,谢谢了!
   


------解决方案--------------------
如果是处理双字节整数那就该这样
C# code
public byte GetHighByte(short intval)
{
    return (byte)(intval >> 8);
}

public byte GetLowByte(short intval)
{
    return (byte)intval;
}