VB计算错误

ly2099 2003-07-03 10:50:58
为何 val("17.74")<>val("15")+val("2.74") ?
...全文
19 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
lovingkiss 2003-07-03
  • 打赏
  • 举报
回复
lwm1977(大维) ,这肯定是浮点数计算误差造成的,使用Double类型,原本就误差很大的
lovingkiss 2003-07-03
  • 打赏
  • 举报
回复
CCur(val("17.74"))<>CCur(val("15"))+CCur(val("2.74"))
也是可以的
lwm1977 2003-07-03
  • 打赏
  • 举报
回复
会不会是因为浮点数计算误差所致
lovingkiss 2003-07-03
  • 打赏
  • 举报
回复
这就是Currency和Double的区别,一般小数点的时候尽量是用Currency

Dim II as Currency,JJ as Currency
II=val("17.74")
JJ=val("15")+val("2.74")
Msgbox II<>JJ

Val默认转换为Double的,所以数据计算的时候,经常会出问题的

7,765

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧