Rust 正在做错误的计算
Rust is doing wrong calculations
我的 Rust 计算代码给出了错误的结果,但是当我在 python 或 C/C++ 中执行相同的操作时,它给出了正确的结果,这是代码 -
生锈 -
let mem_percent_used: u64 = (1569494 / 3915755) * 100;
println!("{}", mem_percent_used);
// outputs 0, expecting 40
在python-
print((1569494 / 3915755) * 100)
# output 40.08151684668729
即使是简单的计算也会给出错误的输出。
那是因为 Rust 不会自动转换数据类型,不像 python。
这是一个工作示例:
fn main() {
let mem_percent_used: f64 = (1569494.0 / 3915755.0) * 100.0;
println!("{}", mem_percent_used);
}
输出:
40.08151684668729
我的 Rust 计算代码给出了错误的结果,但是当我在 python 或 C/C++ 中执行相同的操作时,它给出了正确的结果,这是代码 -
生锈 -
let mem_percent_used: u64 = (1569494 / 3915755) * 100;
println!("{}", mem_percent_used);
// outputs 0, expecting 40
在python-
print((1569494 / 3915755) * 100)
# output 40.08151684668729
即使是简单的计算也会给出错误的输出。
那是因为 Rust 不会自动转换数据类型,不像 python。
这是一个工作示例:
fn main() {
let mem_percent_used: f64 = (1569494.0 / 3915755.0) * 100.0;
println!("{}", mem_percent_used);
}
输出:
40.08151684668729