当我在float中转换字符串'-0'
时,它返回浮点类型-0
示例
$x = '-0';
$y = (float)$x;
result => float -0
为什么-0
是浮点数?
答案 0 :(得分:5)
IEEE 754标准,即几乎所有计算机语言实现浮点数的标准,都具有+0
和-0
值。
对于大多数操作,+0
和-0
可以互换使用。
但是,误差为无穷大的操作,使用+0
或-0
转到+无穷大和无穷大。
因为-0
是一个有效的浮点数,所以将-0
转换为浮点运算完全符合你的要求是完全合理的 - 返回一个值为exact {的浮点数{1}}。
答案 1 :(得分:0)
我们都知道所有整数都是浮点数。在PHP中here
整数可以用十进制(基数10),十六进制(基数16),八进制(基数8)或二进制(基数2)表示,可选地前面带符号( - 或+)
所以-0
是int
,通常是float