血族第二季人人美剧:vb中出现变量相加,结果不等的原因。例如:变量a=30,b=101.11但a+b=131.110000000001,这是什么原因???

来源:百度文库 编辑:中科新闻网 时间:2024/04/30 02:40:29
如何定义 Currency 数据???

浮点数精度不准确的原因造成的,不光是VB,其它语言中也是一样的,如果想得到正确的结果的话,就不要用Float之类的类型,用Currency类型的可以实现准确计算

浮点数只有前若干位是准确的,后面的几位都是随机的。在别的机子上有可能a+b还等于131.110000000999,131.1100000000032什么的。

你可以用LEFT函数让它只显示左边几位,即前几位