浮点值错误和浮点错误

浮动并不总是被正确地解释。

我建议使用浮点数。 我喜欢浮法。 这是一个强大的工具。 但是,如果使用它,请小心测试使用它所返回的结果。

我正在学习C ++ 11。 经过大量研究和学习,我正在使用CODE :: BLOCKS 17.12(它是免费的)。 我没有使用wxWidgets,这似乎妨碍了我学习C ++的方式。 C ++ 11似乎是C ++的最新版本(在2020年),大多数大型行业程序都在使用C ++ 11。 专门用于大型工业,重型制造业,超大型零售分析和控制的程序。 我正在学习C ++ 11。 本文与我所学到的有关float的知识有关。 我致力于弄清float的工作原理以及各种计算机系统如何误用了这些事实。

我使用了float并使用注入的自我创建的报告检查了逻辑过程。 乍一看似乎还不错,但是当测试并报告结果时,它返回的值不正确。 我尝试了float并进行了许多其他测试,随后编写了一个代码报告程序,逐步验证了该逻辑并进行了报告。 我现在的观点是float是强大的,但请注意不要在未经测试和检查数学的情况下就信任它的用法。

问题似乎不是浮点数本身。 似乎各种编译器,各种操作系统,各种视频卡,甚至各种CPU的进程的浮点值都不同,甚至可能是错误的。 我对此进行了研究并得出结论,按照我的编程进行测试和验证。

过去,我使用VB6(sp5)进行编程,最近(部分地)移至C ++,以便可以在计算中使用较大的数字。 VB6(sp5)仍比Visual Studio 6.0(sp5)以上的任何版本都要好。 它优于VS6(sp5)之后的任何“ .net”和Visual Studio [任何东西]。 但是,我被迫转移到更大的数字容量和完整的程序员级别的UNICODE接口。 现在,我了解到,即使C ++通过其必须使用的其他过程也有其局限性,但还不能达到复杂的C ++标准。 验证。 这就是我建议您使用float的原因。

如果使用float,则在小数点后4个额外的位置进行计算时,可能会发现最终结果更准确。 例如:您可能需要pi达到此精度3.14,因此将其用于此精度3.141592(包括四个额外的数字1592)。 如果要将其他数字转换为浮点数或从浮点数进行数学运算,请对其进行测试并验证结果。 您可能会发现将数字00001添加到这样的用法:1234.1234变为1234.123400001。 乍一看,它可能看起来不正确,但您可能会发现更好的结果。 当然,这取决于您的系统。 不同的系统使用或滥用的浮动方式似乎有所不同。

如果您有几个小时或几天的时间来了解什么是浮点数以及如何对其进行编译,那么我建议您花些时间阅读该浮点数,然后您可能会在上一段中看到很多逻辑。

验证。

From: https://bytes.com/topic/software-development/insights/973729-float-value-wrong-float-error

你可能感兴趣的:(浮点值错误和浮点错误)