免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2946 | 回复: 8
打印 上一主题 下一主题

比较数值的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-01-09 13:33 |只看该作者 |倒序浏览
diff -w 比较两个数值 105.6  105.60  会报不相等 有什么可以让它忽略小数点后面的零呢

论坛徽章:
0
2 [报告]
发表于 2009-01-09 13:43 |只看该作者
diff 比较的是文件中的字符,不官是不是数字

论坛徽章:
1
2015年亚洲杯之韩国
日期:2015-04-24 09:07:02
3 [报告]
发表于 2009-01-09 13:45 |只看该作者
也就是做不到呗

论坛徽章:
0
4 [报告]
发表于 2009-01-09 13:54 |只看该作者
你可以用awk来比较

比如

awk 'BEGIN{if(105.6+0==105.60+0){print "equal"}else{print "No equal"}}'

论坛徽章:
0
5 [报告]
发表于 2009-01-09 14:06 |只看该作者
又学习了!!!

论坛徽章:
0
6 [报告]
发表于 2009-01-09 16:33 |只看该作者
diff没法解决 晕....

论坛徽章:
0
7 [报告]
发表于 2009-01-09 17:24 |只看该作者

回复 #1 gonghouyu 的帖子

严格来说 浮点数比较是危险的事情
只能用类似这样的方法来作
const float EPSINON = 0.00001;
if ((x >= - EPSINON) && (x <= EPSINON)

论坛徽章:
0
8 [报告]
发表于 2009-01-09 17:59 |只看该作者
floating不是shell的强项。

论坛徽章:
0
9 [报告]
发表于 2009-01-09 21:46 |只看该作者
可以转换成同一数据类型再去比较。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP