两个FLOAT相加出现的奇怪现象~解决思路
两个FLOAT相加出现的奇怪现象~~~~
- PHP code
<!-- Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ --> list ( $usec, $sec ) = explode ( ' ', microtime () ); printf("秒:%.16f", (float)$sec); printf("微秒:%.16f", (float)$usec); printf("相加:%.16f", ( float ) $usec + ( float ) $sec);
输出结果是:
秒:1327048300.0000000000000000
微秒:0.9687510000000000
相加:1327048300.9687509536743164
我知道浮点数是一个近似值,但是我现在打印$usec且保留小数点后16位的时候,它就是没有小数啊?那不就可以认为它就等于1327048300吗?
它两个相加为什么不是1327048300.9687510000000000呢??
谢谢!!
------解决方案--------------------
Warning
浮点数精度
显然简单的十进制分数如同 0.1 或 0.7 不能在不丢失一点点精度的情况下转换为内部二进制的格式。这就会造成混乱的结果:例如,floor((0.1+0.7)*10) 通常会返回 7 而不是预期中的 8,因为该结果内部的表示其实是类似 7.9999999999...。
这和一个事实有关,那就是不可能精确的用有限位数表达某些十进制分数。例如,十进制的 1/3 变成了 0.3333333. . .。
所以永远不要相信浮点数结果精确到了最后一位,也永远不要比较两个浮点数是否相等。如果确实需要更高的精度,应该使用任意精度数学函数或者 gmp 函数
------解决方案--------------------
连什么是有效数都弄不清楚,真不明白你们爹妈花许多钱供你们上大学是为什么

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Maximaler Wert von Float: 1. In der C-Sprache beträgt der maximale Wert von Float 3,40282347e+38. Gemäß dem IEEE 754-Standard beträgt der maximale Exponent des Float-Typs 127 und die Anzahl der Stellen der Mantisse beträgt 23. Auf diese Weise beträgt die maximale Gleitkommazahl 3,40282347 e+38 2. In der Java-Sprache beträgt der maximale Gleitkommawert 3,4028235E+38; in der Python-Sprache beträgt der maximale Gleitkommawert 1,7976931348623157e+308.

Die Genauigkeit von Float kann 6 bis 9 Dezimalstellen erreichen. Gemäß dem IEEE754-Standard beträgt die Anzahl der signifikanten Ziffern, die der Float-Typ darstellen kann, etwa 6 bis 9 Ziffern. Es ist zu beachten, dass dies nur die theoretische maximale Genauigkeit ist. Aufgrund des Rundungsfehlers von Gleitkommazahlen ist die Genauigkeit des Gleitkommatyps häufig geringer. Bei der Ausführung von Gleitkommazahlenoperationen in einem Computer kann es aufgrund der Genauigkeitsbeschränkungen von Gleitkommazahlen zu Präzisionsverlusten kommen. Um die Genauigkeit von Gleitkommazahlen zu verbessern, können Sie Datentypen mit höherer Genauigkeit verwenden, z. B. Double oder Long Double.

Float ist in der Sprache C ein Datentyp, der zur Darstellung von Gleitkommazahlen mit einfacher Genauigkeit verwendet wird. Gleitkommazahlen sind reelle Zahlen, die in wissenschaftlicher Notation dargestellt werden und sehr große oder sehr kleine Werte darstellen können. Variablen vom Typ float können Werte mit 6 signifikanten Stellen nach dem Dezimalpunkt speichern. In der Sprache C kann der Typ float zum Betreiben und Speichern von Gleitkommazahlen verwendet werden. Seine Variablen können zur Darstellung von Dezimalzahlen, Brüchen und wissenschaftlicher Notation verwendet werden usw., die genau dargestellt werden müssen. Im Gegensatz zu Ganzzahltypen können Gleitkommazahlen Zahlen nach dem Komma darstellen und vier arithmetische Operationen mit Dezimalzahlen ausführen.

Das float32-Byte enthält das Vorzeichenbit, das Exponentenbit und das Mantissenbit und wird zur Darstellung von 32-Bit-Gleitkommazahlen verwendet. Detaillierte Einführung: 1. Vorzeichenbit (1 Bit), das zur Darstellung des Vorzeichens einer Zahl verwendet wird, 0 stellt eine positive Zahl dar, 1 stellt eine negative Zahl dar. 2. Exponentenbit (8 Bit), das zur Darstellung des Exponententeils von a verwendet wird Gleitkommazahl, über das Exponentenbit können Sie den Größenbereich der Gleitkommazahl 3 anpassen. Das Mantissenbit (23 Bit) wird verwendet, um den Mantissenteil der Gleitkommazahl darzustellen, und das Mantissenbit speichert der Dezimalteil der Gleitkommazahl. Das Vorzeichenbit bestimmt das Vorzeichen einer Gleitkommazahl, und das Exponentenbit und das Mantissenbit bestimmen gemeinsam die Größe und Genauigkeit der Gleitkommazahl.

php提交表单通过后,弹出的对话框怎样在当前页弹出php提交表单通过后,弹出的对话框怎样在当前页弹出而不是在空白页弹出?想实现这样的效果:而不是空白页弹出:------解决方案--------------------如果你的验证用PHP在后端,那么就用Ajax;仅供参考:HTML code

Übliche Datenbank-Float-Längen sind: 1. Die Float-Typ-Länge in MySQL kann 4 Bytes oder 8 Bytes betragen. 2. Die Float-Typ-Länge in Oracle kann 4 Bytes oder 8 Bytes betragen. 3. Die Länge des Float-Typs in SQL Server ist auf 8 Bytes festgelegt. 4. Die Länge des Float-Typs in PostgreSQL kann 4 Bytes oder 8 Bytes usw. betragen.

Das Float-Layout kann Probleme wie das Löschen von Floats, Probleme mit der Überlappung von Elementen, Probleme mit dem Textumbruch und Probleme mit dem reaktionsfähigen Layout verursachen. Detaillierte Einführung: 1. Wenn Sie das Float-Layout verwenden, werden die Floating-Elemente vom Dokumentfluss getrennt, was dazu führen kann, dass der übergeordnete Container die Floating-Elemente nicht korrekt umschließen kann Der übergeordnete Container wird zusammenbrechen, was zu einem Layout-Chaos führt. 2. Das Problem der Elementüberlappung besteht darin, dass sich die schwebenden Elemente nicht mehr an der normalen Position des Dokuments befinden.

Zu den Float-Attributwerten gehören left, right, none, inherit, clearinline-start und inline-end. Detaillierte Einführung: 1. links, das Element schwebt nach links, das heißt, das Element befindet sich so nah wie möglich an der linken Seite des Containers und andere Elemente umgeben es auf der rechten Seite. 2. rechts, das Element schwebt nach rechts, das heißt, das Element befindet sich so nah wie möglich am Container. Auf der rechten Seite werden andere Elemente es auf der linken Seite umgeben. 3. Der Standardwert ist „Keine“, die Elemente schweben nicht und werden angeordnet entsprechend dem normalen Dokumentenfluss usw.
