【问题标题】:python struct.error: ushort format requires 0 <= number <= USHRT_MAXpython struct.error: ushort 格式需要 0 <= number <= USHRT_MAX
【发布时间】:2013-07-18 04:28:56
【问题描述】:

我正在使用python做一个测试:

print struct.pack('1H', 101000)

它显示了这个错误:

struct.error: ushort 格式需要 0 

我对此感到困惑,因为我知道 1H 表示 unsigned short 这意味着可以使用第一位,因此 1H 的最大范围应该是 0

【问题讨论】:

    标签: python


    【解决方案1】:

    最大值不是(2&lt;&lt;16) - 1,而是 2^16 - 1。或者,如果您更喜欢将其写成班次,(1&lt;&lt;16) - 1。数字二已经向左移动了一位。 unsigned short(16 位)的最大值为 65535。

    【讨论】:

      猜你喜欢
      • 2017-07-13
      • 2023-03-22
      • 2015-03-08
      • 2020-09-06
      • 1970-01-01
      • 2022-06-12
      • 2021-10-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多