您现在的位置:首页 --> 查看专题: 浮点数
浮点数的存储格式与整数完全不同。大部分的实现采用的是IEEE 754标准,float类型,是1个sign bit,8 exponent bits,23 mantissa bits。而double类型,是1个sign bit,11 exponent bits,52 mantissa bits。至于浮点如何去表示小数,请自行搜索google。由于float使用的小数表示方法,导致浮点数值是有精度限制的。 有限的精度就引发了浮点数值使用时的两个陷阱。
PHP是一种弱类型语言, 这样的特性, 必然要求有无缝透明的隐式类型转换, PHP内部使用zval来保存任意类型的数值, zval的结构如下(5.2为例): ....... 今天的话题, 我们只关注其中的俩个成员, lval和dval, 我们要意识到, long lval是随着编译器, OS的字长不同而不定长的, 它有可能是32bits或者64bits, 而double dval由IEEE 745规定, 是定长的, 一定是64bits. 请记住这一点, 造就了PHP的一些代码的\"非平台无...
有时需要在JSON中使用浮点数,比如价格、坐标等信息。但python中的浮点数相当不准确。
浮点数的二进制表示
[ 共4篇文章 ][ 第1页/共1页 ][ 1 ]
近3天十大热文
-
[1173] WordPress插件开发 -- 在插件使用 -
[71] 解决 nginx 反向代理网页首尾出现神秘字 -
[44] web开发设计人员不可不用的在线web工具和 -
[42] Java开发岗位面试题归类汇总 -
[33] Rax 系列教程(长列表) -
[32] 手机产品设计方向 -
[31] 一句话crontab实现防ssh暴力破解 -
[28] 如何建立合适的索引? -
[27] 程序员疫苗:代码注入 -
[27] oracle技术方面的路线
赞助商广告