是否可以在Rust中编写Quake的快速InvSqrt()函数?
这只是为了满足我自己的好奇心。 是否有此实现: float InvSqrt (float x) { float xhalf = 0.5f*x; int i = *(int*)&x; i = 0x5f3759df - (i>>1); x = *(float*)&i; x = x*(1.5f - xhalf*x*x); return x; } 在Rust中?如果存在,则发布代码。 我尝试过但失败了。我不知道如何使用整数格式编码浮点数。这是我的尝试: fn main() { println!("Hello, world!"); println!("sqrt1: {}, ",sqrt2(100f64)); } fn sqrt1(x: f64) -> f64 { x.sqrt() } …