Entwickler-Ecke

Delphi Language (Object-Pascal) / CLX - Extended-Überlauf abfangen? Oder -1.#QNAN ?


hjl - Di 13.04.21 12:34
Titel: Extended-Überlauf abfangen? Oder -1.#QNAN ?
Gibt es die Möglichkeit, auf einer extended-Variablen den Wert -1.#QNAN abzufangen, d.h. abzufragen?
Es geht mir darum, Abstürze zu vermeiden.

Es ist für ein Delphi-Programm, programmiert auf Embarcadero Delphi 10.2 (Tokyo) in 64 Bit auf Windows 10.
Extended hat hier also 8 Bytes Größe.


Moderiert von user profile iconNarses: Topic aus Sonstiges (Delphi) verschoben am Di 13.04.2021 um 21:46


Th69 - Di 13.04.21 13:36

Das sollte mit IsNan [http://docwiki.embarcadero.com/Libraries/Tokyo/de/System.Math.IsNan] gehen, s.a. IsNaN Function: Checks to see if a floating point number holds a real number [http://delphibasics.50webs.com/RTL/Name/IsNaN/ExpandCode1/Yes.html].

Edit: Evtl. benötigst du auch (noch) IsInfinite [http://docwiki.embarcadero.com/Libraries/Tokyo/de/System.Math.IsInfinite]?!


hjl - Di 13.04.21 15:04

Das mit IsNAN(zahl) genügte mir schon, vielen Dank!

Moderiert von user profile iconTh69: Delphi-Tags hinzugefügt