Ruby 如何将 32 位整数转换为网络字节顺序



可能的重复项:
如何将32位整数转换为网络字节顺序?

我已经问过"如何将 32 位整数转换为网络字节顺序?"但我仍然不明白这个概念。

我需要将数据的长度按网络字节顺序写入套接字。

例如,如果数据的大小(以字节为单位)是 1024,那么我需要在 Ruby 中将其表示为网络字节顺序。

根据我之前问题的答案,它将是:

[1,0,2,4].pack("NNNN")

但是当我尝试这样做时,它也可以工作:

[10,24].pack("NN")
[4,2,0,1].pack("NNNN")

正确的方法是什么?

在 Ruby 中将 32 位整数转换为网络字节顺序的正确方法是

#[integer].pack("N")
[1024].pack("N")

最新更新