请问Currency类型的数到底有何用处?

wyj 2000-02-01 09:57:00
从字面意思上看,CURRENCY类型似乎专为货币类型的处理方便而设计的。但是经我用来却发现,如果真把有关金额的变量声明为这种类型的话,会遇到大问题:连加法都会算错!比如把几个金额相加(如2.10+4.00+5.02+6.07+25.98.....),结果定会让您大出所料----往往会与实际的答案相差1分钱.后来我看了HELP才明白,这种类型的数据是用高精度存储的,所以才会如此.那么请问:
(1)DELPHI中设计此类型的变量原意是何方用途?是不是我上面的使用方法不对?
(2)如果要设计涉及金额的程序,数据应当声明为何类型?怎样处理?
十分感谢大家提供宝贵经验.
...全文
256 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
渤海海峡 2000-02-02
  • 打赏
  • 举报
回复
单精度数是有这样的问题(象float),把他设成双精度数(dbl,number等)就可以了。
我总是用双精度型来设钱,计算没有问题,程序显示时在按照钱型显示。
至于currency类型(我估计你说的是pardox中的currency类型),很少用,不是太清楚。
不过如果精度不够肯定就会有问题。

5,386

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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