Wurzel in c++
-
Statt Wurzel aus 9 kann man ja auch 9^(1/2) schreiben. Also würde ich's so programmieren:
#include <math.h> ... double result = pow(9, 0.5f); ...
EDIT: grr, Verdammt zu langsam...
-
Die sqrt-Funktion ist btw. _wesentlich_ schneller wie pow(x, 0.5)
-
std::sqrt aus <cmath>, hier ein vollständiges Beispiel (leider ungetestet):
Soweit ich weis ist sqrt nicht in std declariert sondern, wie jede C Funktion direkt in den globalen Namesraum!
-
Falsch! So was gibts in C++ nicht (bis auf Makros).
-
Es gibt keine Ausnahme zu der Regelung, dass alle Namen der Standardbibliothek (außer Makros) im Namensraum std stehen.
-
Warum schafft es MS in den neueren Versionen von VC++ eigentlich nicht die aus ANSI C in den C++ Standard übernommen Funktionen in den std-Namespace zu packen?
-
Hm? Verstehe ich nicht. Bis auf einige wenige traurige Ausnahmen sind alle C-Funktionen sowohl im globalen Namensraum als auch in std - so ist es auch noch legal.
-
Ich bin mir nicht sicher, und habe auf diesem PC gerade keine IDE drauf um das zu testen, aber ich meine mich daran erinnern zu können, dass mein VS.NET Compiler meckert wenn ich std::sqrt schreibe.
-
Meiner nicht.
-
Vielen dank, der sqrt Befehl ist genau das, was ich gesucht habe.
nur diese Zeile versteh ich noch nicht:using namespace std;
-
Du kannst entweder jedesmal std::sqrt schreiben oder sagst einmal, dass du dich immer auf den namespace std beziehst.
-
Optimizer schrieb:
Meiner nicht.
Tatsache. Gut, kann ich mir das wenigstens wieder angewöhnen
. Bin noch geprägt durch ältere Versionen.