我想将Preon用于与用 C 编写的服务器进行通信的项目。协议取决于机器的本机字节序(您可以java.nio.ByteOrder.getNative()
在假设 JVM 与服务器具有相同字节序的情况下解决这个问题)并uint64_t
用于数据长度和int32_t
状态码(负值表示错误)。
我在 Preon 文档中找不到有关签名的信息。我快速查看了源代码,发现nl.flotsam.preon.buffer.DefaultBitBuffer
使用了带符号的移位(<<
和>>
),并且几个方法的 javadoc 注释nl.flotsam.preon.buffer.BitBuffer
也表明它使用有符号整数,但 javadoc 注释nl.flotsam.preon.buffer.BitBuffer
说BitBuffer
使用无符号整数。这让我很困惑。
Preon 的默认整数格式是什么?我如何表示uint64_t
和int32_t
?