我正在完成《C. 编程语言》一书,但遇到了一个问题:我应该在不使用任何标准库的情况下获得 float 的最大\最小值,例如 <float.h>
。谢谢
最佳答案
“不使用”练习有点愚蠢,所以这里是一个“不使用”任何标题的版本。
…
double nextafter(double, double);
double max = nextafter(1.0 / 0.0, 0.0);
…
并且不使用任何库函数,仅假设double
映射到IEEE 754的binary64格式(一个非常常见的选择):
…
double max = 0x1.fffffffffffffp1023;
…
关于C、不从 <float.h> 获取最大 float 或最大 double ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29220517/