Geek_Master Skrevet 5. april 2009 Del Skrevet 5. april 2009 Jeg har et problem og finner ikke ut hva som er feil. Bruker visual c++ express. Her er koden: #include <iostream> #include <cmath> int main() { int a; float x; std::cout << "Skriv inn verdien av den lengste kateten: "; std::cin >> a; x = 2 * a / sqrt(3); std::cout <<"Hypotenusen er: " << x << std::endl; system("pause"); return 0; } Og her er feilmeldingen: Compiling... Source.cpp c:\users\supersindre\documents\visual studio 2008\projects\hello world1\hello world1\source.cpp(12) : error C2668: 'sqrt' : ambiguous call to overloaded function d:\sindretech\vc\include\math.h(581): could be 'long double sqrt(long double)' d:\sindretech\vc\include\math.h(533): or 'float sqrt(float)' d:\sindretech\vc\include\math.h(128): or 'double sqrt(double)' while trying to match the argument list '(int)' Forslag? Lenke til kommentar
Giddion Skrevet 5. april 2009 Del Skrevet 5. april 2009 kompilatoren greier ikke å finne ut hvilke funksjon den skal bruke. Du har skrevet inn 3 (int) som da må forandre av kompilatoren, men det er for mange muligheter (mer enn 1) og da får den problemer. Bytte ut 3 med 3.0f eller 3.0 så funker alt. Jeg vil tipse om vc sitt hjelpe system, du har erroren c2668 og hvis du skriver det inn i hjelpen så vil det sikkert ha ha gitt det alt info du trengte. Lenke til kommentar
Geek_Master Skrevet 5. april 2009 Forfatter Del Skrevet 5. april 2009 Jeg bytta ut 3 med 3.0 og nå funker det:D Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå