double: wie fragt man unendlich ab?
-
Hallo,
ich stell grad entsetzt fest, dass man doubles einfach so durch 0 teilen darf...double x = 1.0; double y = 0.0; double z = x / y;Das einzige was passiert ist, dass z dann den Wert
1.#INF000000000000
annimmt (wird im Debugger angezeigt).Mich würde jetzt interessieren, wie man einen Wert auf unendlich testen kann?
(ok, man könnte auch y vorher auf 0 testen...)Oder auch die Zuweisung von 1.#INF000000000000 an einen double wäre interessant.
double foo = 1.#INF000000000000 oder foo == 1.#INF000000000000wird nicht übersetzt.
thx
Martin
-
= DBL_MAX
:xmas2:
-
noch nie gemacht, so vielleicht
> std::numeric_limits<double>::max();
-
Ich bin mir gerade nicht sicher ob es sowas wie man: isinf auch für C++ gibt.
-
miller_m schrieb:
noch nie gemacht, so vielleicht
> std::numeric_limits<double>::max();So nicht (liefert wohl den höchsten darstellbaren gültigen Wert).
Aber so gehts:
if (z == std::numeric_limits<double>::infinity())@all:
Danke für die schnellen Antworten
-
anonymus schrieb:
miller_m schrieb:
noch nie gemacht, so vielleicht
> std::numeric_limits<double>::max();So nicht (liefert wohl den höchsten darstellbaren gültigen Wert).
wie gesagt war ja auch nur geraten

-
miller_m schrieb:
anonymus schrieb:
miller_m schrieb:
noch nie gemacht, so vielleicht
> std::numeric_limits<double>::max();So nicht (liefert wohl den höchsten darstellbaren gültigen Wert).
wie gesagt war ja auch nur geraten

dafür hast mich auf die richtige Spur gebracht
