Wie kann ich dieses Problem beheben? Das heißt – ich möchte den absoluten Wert von a double.
Hast du versucht fabs(-3.8951)? man abs sagt “den Absolutwert einer ganzen Zahl berechnen” und fabs(3) wird in “SIEHE AUCH” querverwiesen. Gehen Sie niemals davon aus, dass die Dinge in verschiedenen Sprachen gleich funktionieren. Zumal Java Klassen hat und Methoden überladen kann, C aber nicht.
– Schleicher
6. Januar 2014 um 18:07 Uhr
@mbratch – danke!!!!!!!!!!!!!! Ich werde dies in Zukunft berücksichtigen
– Benutzer3155478
6. Januar 2014 um 18:10 Uhr
abs ist nur für Integer in C implementiert. Aus diesem Grund empfehlen alle Antworten die Verwendung von fabs, was das Gleitkommaäquivalent ist.
– outis nihil
6. Januar 2014 um 18:11 Uhr
“Absolutwert von einem negativen Double” ist einfach: -x. 😉
– chux – Wiedereinsetzung von Monica
9. Februar 2021 um 17:33 Uhr
herohuyongtao
Verwenden fabs() (in math.h), um einen absoluten Wert zu erhalten double:
double d1 = fabs(-3.8951);
Da Sie etwas schneller als Hacks waren, haben Sie gewonnen.
– Benutzer3155478
6. Januar 2014 um 18:26 Uhr
fabs() ist für Doubles. fabsf() ist für Gleitkommazahlen.
– Pummeluff
7. September 2016 um 4:36 Uhr
Beide verdienen meine Liebe gleichermaßen.
– Schlau
22. November 2017 um 12:16 Uhr
hackt
Verwenden fabs Anstatt von abs um den absoluten Wert von zu finden double (oder float) Datentypen. Umfassen die <math.h> Überschrift für fabs Funktion.
double d1 = fabs(-3.8951);
Es ist erwähnenswert, dass Java eine Methode wie überladen kann abs damit es mit einer Ganzzahl oder einem Double funktioniert. In C gibt es keine Überladung, daher benötigen Sie unterschiedliche Funktionen für Integer und Double.
“In C gibt es kein Überladen” –> Stimme teilweise nicht zu, Forschung <tgmath.h> benutzen fabs() mit verschiedenen FP-Typen. Ähnliche Wirkung möglich.
– chux – Wiedereinsetzung von Monica
9. Februar 2021 um 17:19 Uhr
Firas Nomaan
Das habe ich mit gefunden cabs(double), cabsf(float), cabsl(long double), __cabsf(float), __cabs(double), __cabsf(long double) ist die Lösung
Hast du versucht
fabs(-3.8951)
?man abs
sagt “den Absolutwert einer ganzen Zahl berechnen” undfabs(3)
wird in “SIEHE AUCH” querverwiesen. Gehen Sie niemals davon aus, dass die Dinge in verschiedenen Sprachen gleich funktionieren. Zumal Java Klassen hat und Methoden überladen kann, C aber nicht.– Schleicher
6. Januar 2014 um 18:07 Uhr
@mbratch – danke!!!!!!!!!!!!!! Ich werde dies in Zukunft berücksichtigen
– Benutzer3155478
6. Januar 2014 um 18:10 Uhr
abs ist nur für Integer in C implementiert. Aus diesem Grund empfehlen alle Antworten die Verwendung von fabs, was das Gleitkommaäquivalent ist.
– outis nihil
6. Januar 2014 um 18:11 Uhr
“Absolutwert von einem negativen Double” ist einfach:
-x
. 😉– chux – Wiedereinsetzung von Monica
9. Februar 2021 um 17:33 Uhr