此代码:
let a = 1.00000003E-27f32;
let b = 3.19291373E+17f32;
println!("{:e} < {:e}", a/b, std::f32::MIN_POSITIVE);
产生以下结果:
3e-45 < 1.1754944e-38
首先,我认为是零,因为MIN_POSITIVE
是最小的正数.那我已经读了大约subnormal numbers本了.那么,铁 rust 之所以打印这个结果,是因为它是一个不正常的数字吗?但是,为什么它不显示为一个不正常的数字呢?