22. maj 2002 - 09:14
Der er
9 kommentarer og 3 løsninger
Standardbibliotek for matematiske funktioner
Jeg er væltet ind i C++ verdenen fra Java og savner et standardbibliotek som svarer til Java's Math.* Specielt Math.pow(double, double), hvor man hælder to parametre med - den ene skal så opløftes i den anden... Findes det, og hvis ja, hvad hedder det og hvor ligger det?
Annonceindlæg fra DE-CIX
<math.h> kig evt. i header filen eller dokumentationen for at se hvilke funktioner den indeholder.
ahhh...hvordan kalder man den så? Se eksemplet, hvor ?? er uafklaret... #include<math.h> using namespace ??? ... pow(parametre??);
Pow bruges således i <cmath> Pow(tallet der skal opløftes, opløftede tal)
det skal skrives med lille p altså p(?,?)
Hvad er forskellen på <cmath> og <math.h>?? Er der f.eks. en af dem, der er fra C's tid, mens den anden er fra C++'s tid?
<cmath> indeholder ikke meget mere end en #include <math.h> så de er ens. (baseret på observation af hvordan msvc++ har gjort).
math.h er ikke i noget namespace. Du bruger det som fx. (pow): #include <iostream.h> #include <conio.h> #include <math.h> void main() { cout << "Potens:" << endl; cout << pow(10, 3) << endl; getch(); }
Det skulle have været et svar, og jeg skal også lige nævne at ovenstående kompiler i MSVC++6.0.
Ang. forskel på <cmath> og <math.h> er det korrekt at <math.h> er fra C's tid og <cmath> er fra C++'s tid (der er dog ingen forskel i dette tilfælde). Alle header-filer der inkluderes med .h er fra C's biblioteker. I C++ skriver vi filnavn uden extension i inkludes.
Point givet for brugbarhed (set ud fra efterfølgende spg.)... :)
Kurser inden for grundlæggende programmering