gpt4 book ai didi

ruby - 如何在 Ruby 中将有符号整数转换为无符号整数?

转载 作者:数据小太阳 更新时间:2023-10-29 07:58:18 27 4
gpt4 key购买 nike

我有一个从 C 程序收到的负数数字:

-1771632774

应该是这个数字:

2523334522

我意识到这一定是由于从有符号整数到无符号整数的某种转换。现在我在 Ruby 中有了这个负数,我怎样才能将它转换回无符号版本?

最佳答案

将负整数放入数组中。使用 'L' 参数调用 pack,该参数表示“32 位无符号 native 字节序 (uint32_t)”。使用相同的参数调用 unpack。最后,从数组中取出数字。

[-1771632774].pack('L').unpack('L').first
#=> 2523334522

http://ruby-doc.org/core-2.4.0/Array.html#method-i-pack

关于ruby - 如何在 Ruby 中将有符号整数转换为无符号整数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51250086/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com