rust - 将 &i64 转换为 &[u8; 的惯用方法是什么? 8]?

标签 rust slice

我正在用 blake2 做一些散列处理箱。它只接受字节切片 &[u8]。数据的最大部分(字符串)可以毫无问题地转换为 byte slice ,但时间戳(i64)不能。是否有一种跨平台的、惯用的方式来进行这种转换? i64 的字节顺序是通过调用 to_le 来确保的,然后再对它进行任何操作。

最佳答案

i64 类型有一个 to_le_bytes返回 [u8; 的方法8],并且由于 i64 是一种复制类型,因此很容易调用它,然后将引用传递给返回的数组。它不会引用与原始 i64 相同的字节,因为它返回一个拥有的数组而不是引用,但在这种情况下这无关紧要。

关于rust - 将 &i64 转换为 &[u8; 的惯用方法是什么? 8]?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61420615/

相关文章:

arrays - 如何在 RUST 中逐字节比较 2 个不同的字符串文字

rust - 为什么不能在同一结构中存储值和对该值的引用?

json - 如何获取服务器从reqwest http调用发送回的数据?

python - 如果列表中的元素位于两个空格之间,则连接这些元素

xml - 解码 XML 以构造并转换为 slice

pointers - Go循环指针变化

rust - 为什么我不能在模式匹配时使用常量,即使它实现了 PartialEq 和 Eq?

arrays - 数组切片的奇怪行为

python - 使用字符串定义 Numpy 数组切片

visual-studio-code - 如何在 Visual Studio Code 中禁用 Rust 变量及其方法的下划线?