gpt4 book ai didi

rust - 如何在 Rust 中将十六进制字符串转换为 float ?

转载 作者:行者123 更新时间:2023-11-29 08:22:01 25 4
gpt4 key购买 nike

将十六进制字符串转换为 float 最直接的方法是什么? (不使用第 3 方包装箱)

Rust 是否提供了一些等同于 Python 的 struct.unpack('!f', bytes.fromhex('41973333'))


请参阅此问题以获取 Python & Java , 提以供引用。

最佳答案

没有外部箱子这很容易:

fn main() {
// Hex string to 4-bytes, aka. u32
let bytes = u32::from_str_radix("41973333", 16).unwrap();

// Reinterpret 4-bytes as f32:
let float = unsafe { std::mem::transmute::<u32, f32>(bytes) };

// Print 18.9
println!("{}", float);
}

Playground link.

关于rust - 如何在 Rust 中将十六进制字符串转换为 float ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43704630/

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