132得票12回答
两个不相等浮点数相减可能得到 0 吗?

在以下示例中,是否可能出现除以0(或无穷大)的情况?public double calculation(double a, double b) { if (a == b) { return 0; } else { ...

122得票3回答
什么是次标准浮点数?

isnormal()参考页面解释如下: 判断给定的浮点数类型参数arg是否为正常值,即不是零、次正规(subnormal)、无限、非数。 很清楚的知道什么是0、无限或者NaN,但同时它也提到了次正规(subnormal)。什么情况下一个数是次正规的?

120得票3回答
PHP中的类型转换和(严格)大于/小于比较

PHP以其类型转换而闻名。我必须承认,这让我感到困惑,我很难在比较中找到基本逻辑/基本事物。 例如:如果$a > $b为真且$b > $c为真,那么它必须意味着$a > $c也总是真的吗? 按照基本逻辑,我会说是的,但我太困惑了,以至于我不太相信PHP是否符合这种情况。也...

97得票4回答
为什么(inf+0j)*1的计算结果是inf+nanj?

>>> (float('inf')+0j)*1 (inf+nanj) 为什么?这导致了我的代码出现了一个讨厌的 bug。 为什么不让 1 成为乘法恒等元,得到结果 (inf + 0j) 呢?

87得票7回答
16位、32位和64位的IEEE-754系统可以表示哪个数字范围?

我对浮点数的表示方法有一些了解,但恐怕不够深入。 我的问题是: 对于给定精度(在我的情况下,基于十进制的准确小数位数),16位、32位和64位IEEE-754系统可以表示哪个数字范围? 具体来说,我只关心精度为+/-0.5(个位)或+/-0.0005(千分位)的16位和32位数字...

85得票6回答
JavaScript中的大数字误舍入

看这段代码: var jsonString = '{"id":714341252076979033,"type":"FUZZY"}'; var jsonParsed = JSON.parse(jsonString); console.log(jsonString, jsonParsed)...

70得票3回答
为什么IEEE 754保留这么多NaN值?

看起来IEEE 754标准将16777214个32位浮点值定义为NaN,占所有可能值的0.4%。 我不知道为什么要保留那么多有用的值,而实际上只需要两个值:一个用于信号,一个用于安静NaN。 如果这个问题很简单,请谅解,我在互联网上找不到任何解释。

70得票5回答
所有整数值都可以完美地表示为双精度浮点数吗?

我的问题是:是否保证所有整数值都有完美的双精度表示。 考虑以下输出“Same”的代码示例:// Example program #include <iostream> #include <string> int main() { int a = 3; int...

69得票10回答
在C#中将double格式化以便输出

通过运行与在.NET中double乘法是否有问题?相关的快速实验并阅读一些关于C#字符串格式化的文章,我认为以下内容:{ double i = 10 * 0.69; Console.WriteLine(i); Console.WriteLine(String.Forma...

65得票2回答
为什么MSVS不能优化掉+0?

这个question展示了一个非常有趣的现象:denormalized浮点数会使代码变慢超过一个数量级。 这种行为在accepted answer中得到了很好的解释。然而,有一条评论目前有153个赞,我无法找到令人满意的答案: 为什么编译器不直接在这种情况下删除+/-0呢?!? - Mi...