【发布时间】:2018-10-03 10:51:27
【问题描述】:
我发现以下代码计算了log2 的float x:
union { float f; unsigned int i; } vx = { x };
float y = vx.i;
y *= 1.0 / (1 << 23);
y = y - 126.94269504f;
return y;
union的f参数初始化为输入x然后使用i?我无法理解它如何使用未初始化的东西。 vx.i 的实际价值是什么?谢谢。
【问题讨论】: