URL: https://www.overclockers.at/coding-stuff/c-sqrt-von-unsigned-long-long_238193/page_1 - zur Vollversion wechseln!
Ich möchte von einer unsigned long long Variable die Wurzel ziehen.
Bei der Funktion wurzel=sqrt(zahl) regt sich der Visual Studio 2010 Express Compiler jedoch auf, da sqrt eine Überladene Funktion ist und möchte, dass ich einen Typecast setze (beides sind unsigned long long Variablen). Zur Auswahl stellt er mir jedoch nur long double, float und double, die mich jedoch alle nicht zum Ziel bringen.
Gibts hier einen bekannten Workaround, oder hab ich irgendwo einen Fehler im Code und es sollte auch ohne Typecast funktionieren?
Was ich mitbekommen habe dürfte gcc den Code jedoch kompilieren können
Warum sollte dich long double nicht ans Ziel führen?
Ich benötige den kompletten Zahlenbereich einer 64Bit Zahl und die Mantisse bei long double beträgt leider nur 15 Stellen.
Da ich nicht weiß, wie sich long double beim Runden verhält und das Verhalten sich zu gcc unterscheiden dürfte kann es sein, dass ich dadurch auf Probleme stoße, welche bei unsigned long long nicht auftreten würden.
Zitat von schizoIch benötige den kompletten Zahlenbereich einer 64Bit Zahl und die Mantisse bei long double beträgt leider nur 15 Stellen.
Zitat von RingdingInteressant. Wo ist dann der Unterschied zu einem normalen double?
die mantisse bei einer long double (mit 80bit) is doch üblicherweise 64 bit
oder steh ich grad voll daneben?
------edith packts grade nicht---------
das ms da wirklich nicht mehr wie double anbietet
overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2025