![]() |
Delphi-Version: 2009
Division durch Null mit unterschiedlichen Ergebnissen
Moin,
ich beschäftige mich gerade mit MadExcept und wollte einen Programmabsturz erzeugen. Am schönsten ist eine Division durch Null, dachte ich.
Delphi-Quellcode:
Wenn ich ein neues Projekt baue, funzt das super, bei dem Zielprojekt aus Delphi 6 bekomme ich "INF" für Infinite gemeldet.
var
i : integer; {$R *.res} begin ShowMessage(FloatToStr(i/0)); Application.ProcessMessages; Application.Initialize; Wovon hängt es denn ab, wie eine Division durch Null behandelt wird? Danke, Messie |
AW: Division durch Null mit unterschiedlichen Ergebnissen
Das hängt davon ab, wie der mathematische (Co)Prozessor eingestellt ist.
hier steht Näheres datzu (und irgendwo in der OH sollte auch noch was geschrieben sein) ![]() |
AW: Division durch Null mit unterschiedlichen Ergebnissen
Moin,
das "Problem" ist, dass eine Gleitkommazahl durch 0 geteilt werden "kann" (siehe ![]() Du sollest einfach IntToStr nutzen. Und dann eventuell dann mit "div" teilen. MfG Fabian |
AW: Division durch Null mit unterschiedlichen Ergebnissen
Division durch Null???
Seit wann ist denn das möglich? :shock: |
AW: Division durch Null mit unterschiedlichen Ergebnissen
Zitat:
Der Wert "INF" zeigt ja auch das es keine "richtige" Zahl ist. Aber im Bereich DirectX/Spiele ist ein "INF" performanter als hier immer mit try/except zu arbeiten oder jedesmal eine Abfrage auf Null zu haben. Ob nun bei einem Ego-Shooter das 4 Pixel auf der Nase von oben etwas Dunkler/Heller ist, ist wohl egal. |
AW: Division durch Null mit unterschiedlichen Ergebnissen
Zitat:
Da wird wohl irgendeine Komponente während ihrer Initialisierung am CoPro rumgedreht haben, die im neuen und nackten Projekt nicht drin ist. Interessant. Grüße, Messie |
AW: Division durch Null mit unterschiedlichen Ergebnissen
Zitat:
Ich habe das Verhalten nicht hier getestet, aber in der Wikipedia steht ja warum es "möglich" ist. MfG Fabian |
AW: Division durch Null mit unterschiedlichen Ergebnissen
Zitat:
und wenn ich mich nicht irre ging es darum einen Fehler zu provozieren, und das sollte man damit hinbekommen. Gruß K-H |
AW: Division durch Null mit unterschiedlichen Ergebnissen
Es ist, allgemein, nicht möglich. Es ist aber in manchen Fällen möglich der Operation ein Ergebnis anzudichten, welches in dem Zusammenhang sinnvoll ist - egal ob nun mathematisch oder systematisch. X/0 hat praktisch kein "natürliches" Ergebnis, sondern nur ein "definiertes" - wenn man es explizit so angibt, was bei der x87 FPU möglich ist.
Noch spannender ist das bei 0/0 :) |
AW: Division durch Null mit unterschiedlichen Ergebnissen
Zitat:
Habe auch einen Verdächtigen ausgemacht: TeeChart Pro benutzt OpenGL für bestimmte Funktionen. Da ist der Befehl Set8087CW jedenfalls drin. Grüße, Messie |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:00 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz