Nja, de Debugger zeigt die Werte nicht immer "optimal" an, ganz kleine Zahlen rundet der auch schonmal zu einer "glatten" 0
und vorallem mit "defekten" Werten kommt der nicht unbedingt klar. (wer konnt auch ahnen, daß sowas mal passieren könnte)
Ist das denn wirklich eine 0.000000000000000... ?
Was gibt der Code denn aus, wenn du ihn in deine Funktion einfügst?
Delphi-Quellcode:
var
X: Int64 absolute Value;
begin
ShowMessage(IntToHex(X, 16));
(PS: Strg+C funktioniert im Quellcode, in Compiler-/Debuggermeldungen und sogar in den Dialogen/Fehlermeldungen)
Delphi-Quellcode:
var
T: TDateTime;
begin
T := 0;
if T < 0 then ;
T := NaN; // absichtlich kaputte Zahl (definierter Zustand, welchen auch der Debugger versteht)
if T < 0 then ;