输出精度降低到操作数的精度

时间:2012-08-09 13:47:29

标签: .net math expression precision delphi-prism

我收到以下表达式的警告信息。

(400*ev.PageBounds.Width)/2400

警告消息输出精度降低到操作数的精度

为什么呢?我可以忽略它吗?

谢谢,

1 个答案:

答案 0 :(得分:2)

只需使用更精确的操作数:

(400.0*ev.PageBounds.Width)/2400.0

或施放它们:

(((double)400)*v.PageBounds.Width)/(double)2400

等。请注意,400指示结果的类型,您可以跳过转换2400

编辑:不,一般情况下你不应该忽略它。该消息警告您,将BLAH除以2400可能会导致分数被截断。 IE浏览器。 3500/2400 = 1.当所有操作数都是整数时,它将以这种方式完成,例如:

2 * 4 / 10 * 10 ==== 0

,而

2 * 4.0 / 10 * 10 ==== 8