Forum: Object-Pascal / Delphi-Language
Delphi
by himitsu,
18. Apr 2014
Und das zeigt auch nichts an?
var
P: PByte;
i: Integer;
S: string;
begin
try
if value <= 0.0 then
Result := ''
else
Forum: Object-Pascal / Delphi-Language
Delphi
by himitsu,
16. Apr 2014
Das ganze läuft aber nicht in einem Thread? (wegen der MessageBox)
Ansonsten sieht es eher so aus, als wenn da irgendwas anderes total zerschossen wäre und nur hier zufällig erst einen Fehler ausgelöst wird, wenn sich nichtmal die MessageBox zeigt.
Forum: Object-Pascal / Delphi-Language
Delphi
by himitsu,
16. Apr 2014
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?
var
X: Int64 absolute...
Forum: Object-Pascal / Delphi-Language
Delphi
by himitsu,
16. Apr 2014
Solltest du dann nicht besser "-" rechnen, um auch mal bei kleiner 0 vorbei zu kommen? :angel:
Aber so lange in t eine "gültige" Fließkommazahl drin ist, gibt es keine Probleme.
Außer nach einer Weile ein eventuelle "Überlauffehler", aber diese Prüfung ist ja standardmäßig deaktiviert.
"Anwendung hängt", müsste da aber schon kommen. :lol:
Forum: Object-Pascal / Delphi-Language
Delphi
by himitsu,
16. Apr 2014
Was ist nun eigentlich der Fehler?
Oder ist das "Ungewöhnliche ungültige Gleitkommaoperation" die Fehlermeldung?
Und welchen Wert hat das Value und wo kommt der Wert her?
(z.B. mit NaN lässt sich keine Zahl vergleichen)