Swift 4中Int64的srand48?

Swift 4中Int64的srand48?,swift,srand,Swift,Srand,我正在创建一个以Int值作为种子的随机数代码生成器。我使用了srand48和drand48,它工作正常,直到我发现我的种子值对于32位设备来说太大 为了满足这个需求,我尝试用Int64替换Int。问题是,srand48不接受Int64作为参数。你对如何缓解这种情况有什么建议吗 提前谢谢 您可以将Int64截断为Int: 在32位设备上,这会将64位数字截断为其最低有效32位。我刚刚阅读了中的文档,结果证明这是解决此问题的一个很好的方法。谢谢你的建议,马丁! let i64 = Int64(...

我正在创建一个以Int值作为种子的随机数代码生成器。我使用了srand48和drand48,它工作正常,直到我发现我的种子值对于32位设备来说太大

为了满足这个需求,我尝试用Int64替换Int。问题是,srand48不接受Int64作为参数。你对如何缓解这种情况有什么建议吗

提前谢谢

您可以将Int64截断为Int:


在32位设备上,这会将64位数字截断为其最低有效32位。

我刚刚阅读了中的文档,结果证明这是解决此问题的一个很好的方法。谢谢你的建议,马丁!
let i64 = Int64(...)
srand48(Int(truncatingIfNeeded: i64))