首页
Python
Java
前端
数据库
Linux
Chatgpt专题
开发者工具箱
0.58专题
回复:浮点数0.57 0.58 造出的坑爹问题
今天看到 vb2005xu 提到了一个问题 浮点数0.57 0.58 造出的坑爹问题。 parseInt(0.59*100) // 59parseInt(0.58*100) // 57parseInt(0.57*100) // 56parseInt(0.56*100) // 56 为什么会这样呢?随后又举了 PHP 的例子,结果还是一样的结果,只是函数换成了 intval
阅读更多...
php中intval(0.58*100) 为什么输出 57 ?
和浮点数的特点有关系,浮点数的存储不是我们平时见到的样子,0.58,存起来依旧有一堆后缀。不仅仅是php,javascript也是有一样的情况。 PHP 的 Manual 里有写,是 intval() 这个函数的问题,采用的是“截断”法取整。其实如果你直接输出 0.57*100 结果是正确的。intval converts doubles to integers by truncating th
阅读更多...