学习intval中遇到的问题

学习intval中遇到的问题:

 

$r = 0.1; 

for($a = 1; $a < 10; $a++){ 

$r += 0.1; 

echo "<br />intval('$r') = ".intval($r); 

 

 

 

打印出结果  intval('1') = 0;

 

========================

如果我 初始化 $r = 0.8;

 

累加到1时;打印出结果  intval('1') = 1;

 

打印结果:

intval('0.2') = 0 
intval('0.3') = 0 
intval('0.4') = 0 
intval('0.5') = 0 
intval('0.6') = 0 
intval('0.7') = 0 
intval('0.8') = 0 
intval('0.9') = 0 
intval('1') = 1

 

========================

我用javascript写了一下0.1累加0.1 的程序

 

<script>

var str=0.1;

var bb="";

for(var i=1;i<20;i++){

str +=0.1;

bb += "<br />('"+str+"') ";

}

document.getElementById("aa").innerHTML=bb;

</script>

 

 

得出的结果很吃惊;

 

('0.2') 
('0.30000000000000004') 
('0.4') 
('0.5') 
('0.6') 
('0.7') 
('0.7999999999999999') 
('0.8999999999999999') 
('0.9999999999999999') 
('1.0999999999999999') 
('1.2') 
('1.3') 
('1.4000000000000001') 
('1.5000000000000002') 
('1.6000000000000003') 
('1.7000000000000004') 
('1.8000000000000005') 
('1.9000000000000006') 
('2.0000000000000004') 

 

这个估计只能用汇编语言解释了 

有没有汇编的高手给指点一下

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值