Namensräume
Varianten
Aktionen

fabs, fabsf, fabsl, fabsd32, fabsd64, fabsd128

Von cppreference.com
< c‎ | numerik‎ | math
 
 
 
Allgemeine mathematische Funktionen
Funktionen
Grundlegende Operationen
fabs
(C99)
(C99)
(C99)
(C99)(C99)(C99)(C23)
Maximum/Minimum-Operationen
(C99)
(C99)
Exponentialfunktionen
(C23)
(C99)
(C99)
(C23)
(C23)

(C99)
(C99)(C23)
(C23)
(C23)
Potenzfunktionen
(C99)
(C23)
(C23)

(C99)
(C23)
(C23)
Trigonometrische und hyperbolische Funktionen
(C23)
(C23)
(C23)
(C23)
(C99)
(C99)
(C99)
Nächste ganze Gleitkommazahlen
(C99)(C99)(C99)
(C99)

(C99)(C99)(C99)
(C23)(C23)(C23)(C23)
Gleitkomma-Manipulation
(C99)(C99)
(C99)(C23)
(C99)
Verengende Operationen
(C23)
(C23)
(C23)
(C23)
(C23)
(C23)
Quanten- und Quantenexponent-Funktionen
Dezimal-Neu-Kodierungsfunktionen
Gesamtordnung und Payload-Funktionen
Klassifizierung
(C99)
(C99)
(C99)
(C23)
Fehler- und Gammafunktionen
(C99)
(C99)
(C99)
(C99)
Typen
Makrokonstanten
Spezielle Gleitkommawerte
(C99)(C23)
Argumente und Rückgabewerte
Fehlerbehandlung
Schnelle Operationsanzeigen
 
Definiert in Header <math.h>
float       fabsf( float arg );
(1) (seit C99)
double      fabs( double arg );
(2)
long double fabsl( long double arg );
(3) (seit C99)
_Decimal32  fabsd32( _Decimal32 arg );
(4) (seit C23)
_Decimal64  fabsd64( _Decimal64 arg );
(5) (seit C23)
_Decimal128 fabsd128( _Decimal128 arg );
(6) (seit C23)
Definiert in Header <tgmath.h>
#define fabs( arith )
(7) (seit C99)
1-6) Berechnet den Absolutwert eines Gleitkommazahlenwerts arg.

Die Funktionen mit Dezimal-Gleitkomma-Parametern werden genau dann deklariert, wenn die Implementierung __STDC_IEC_60559_DFP__ vordefiniert (d.h. die Implementierung unterstützt Dezimal-Gleitkommazahlen).

(seit C23)
7) Typ-generisches Makro: Wenn das Argument vom Typ _Decimal128, _Decimal64, _Decimal32,(seit C23)long double, double, oder float ist, wird entsprechend fabsd128, fabsd64, fabsd32,(seit C23)fabsl, fabs, oder fabsf aufgerufen. Andernfalls, wenn das Argument einen Ganzzahltyp hat, wird fabs aufgerufen. Andernfalls, wenn das Argument komplex ist, ruft das Makro die entsprechende komplexe Funktion (cabsf, cabs, cabsl) auf. Andernfalls ist das Verhalten undefiniert.

Inhalt

[edit] Parameter

arg - Gleitkommawert
arith - Gleitkomma- oder Ganzzahlwert

[edit] Rückgabewert

Bei Erfolg wird der Absolutwert von arg (|arg|) zurückgegeben. Der zurückgegebene Wert ist exakt und hängt nicht von Rundungsmodi ab.

[edit] Fehlerbehandlung

Diese Funktion unterliegt keiner der in math_errhandling angegebenen Fehlerbedingungen.

Wenn die Implementierung IEEE-Gleitkomma-Arithmetik (IEC 60559) unterstützt,

  • Wenn das Argument ±0 ist, wird +0 zurückgegeben.
  • Wenn das Argument ±∞ ist, wird +∞ zurückgegeben.
  • Wenn das Argument NaN ist, wird NaN zurückgegeben.

[edit] Beispiel

#include <math.h>
#include <stdio.h>
 
#define PI 3.14159
 
// This numerical integration assumes all area is positive.
double integrate(double f(double),
                 double a, double b, // assume a < b
                 unsigned steps) // assume steps > 0
{
    const double dx = (b - a) / steps;
    double sum = 0.0;
    for (double x = a; x < b; x += dx)
        sum += fabs(f(x));
    return dx * sum;
}
 
int main(void)
{
    printf("fabs(+3) = %f\n", fabs(+3.0));
    printf("fabs(-3) = %f\n", fabs(-3.0));
    // special values
    printf("fabs(-0) = %f\n", fabs(-0.0));
    printf("fabs(-Inf) = %f\n", fabs(-INFINITY));
 
    printf("Area under sin(x) in [-PI, PI] = %f\n", integrate(sin, -PI, PI, 5101));
}

Ausgabe

fabs(+3) = 3.000000
fabs(-3) = 3.000000
fabs(-0) = 0.000000
fabs(-Inf) = inf
Area under sin(x) in [-PI, PI] = 4.000000

[edit] Referenzen

  • C23-Standard (ISO/IEC 9899:2024)
  • 7.12.7.2 Die fabs-Funktionen (S. TBD)
  • 7.25 Typ-generische Mathematik <tgmath.h> (S. TBD)
  • F.10.4.2 Die fabs-Funktionen (S. TBD)
  • C17-Standard (ISO/IEC 9899:2018)
  • 7.12.7.2 Die fabs-Funktionen (S. 181)
  • 7.25 Typ-generische Mathematik <tgmath.h> (S. 272-273)
  • F.10.4.2 Die fabs-Funktionen (S. 382)
  • C11-Standard (ISO/IEC 9899:2011)
  • 7.12.7.2 Die fabs-Funktionen (S. 248)
  • 7.25 Typ-generische Mathematik <tgmath.h> (S. 373-375)
  • F.10.4.2 Die fabs-Funktionen (S. 524)
  • C99-Standard (ISO/IEC 9899:1999)
  • 7.12.7.2 Die fabs-Funktionen (S. 228-229)
  • 7.22 Typ-generische Mathematik <tgmath.h> (S. 335-337)
  • F.9.4.2 Die fabs-Funktionen (S. 460)
  • C89/C90-Standard (ISO/IEC 9899:1990)
  • 4.5.6.2 Die fabs-Funktion

[edit] Siehe auch

berechnet den Absolutwert eines ganzzahligen Wertes (|x|)
(Funktion) [bearbeiten]
erzeugt einen Wert mit dem Betrag eines gegebenen Werts und dem Vorzeichen eines anderen gegebenen Werts
(Funktion) [bearbeiten]
prüft, ob die gegebene Zahl negativ ist
(Funktionsmakro) [bearbeiten]
(C99)(C99)(C99)
berechnet den Betrag einer komplexen Zahl
(Funktion) [bearbeiten]