0

我不是数学大叔,但一位真正的大叔告诉我:

“用定点代替浮点做乘法、除法、求和、三角和积分”

因此,我应该怎么做,而不是使用 double 或 float 数据类型?有没有人有一个方便的片段或链接来显示非数学叔叔的区别?

4

3 回答 3

2

该语言本身不支持除整数和浮点值之外的任何内容。但是,您可以通过整数轻松模拟定点值。例如,如果您决定想要一个带有三位小数的定点值,您可以使用例如 12345 来表示 12.345。加法是直截了当的,您肯定可以弄清楚如何表达其他基本运算。

但是,不支持进行三角学等。

于 2011-04-01T09:21:34.763 回答
2

检查下面的固定点链接,我相信对你有用......

http://cnx.org/content/m11054/latest/

http://www.digitalsignallabs.com/fp.pdf

于 2011-04-01T09:23:22.367 回答
-1

不管“数学大叔”是谁,他都错了。

除非您真正了解自己在做什么,否则您提出的任何定点实现都不会因使用本机双精度和系统数学库而更加准确。如果你真的明白你在做什么,你就不会问这个问题。

所以不用担心。使用double. 遇到精度问题,先搞懂,搞懂后才考虑如何规避。

于 2011-04-02T04:49:23.707 回答