Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

frexp, frexpf, frexpl - Gleitkommazahl zerlegen in Mantisse und Exponent

&pagelevel(4)&pagelevel

Definition

#include <math.h>

double frexp(double wert, int *e_zg);
float frexpf(float wert, int *e_zg); (C11)
long double frexpl(long double wert, int *e_zg); (C11)

Diese Funktionen zerlegen einen Gleitkommawert wert in die Mantisse x und den Exponenten n, nach der Formel:

wert = x * 2n

|x|

n

liegt im Intervall [0.5, 1.0[

ist ganzzahlig

Als Ergebnis liefern die Funktionen die Mantisse x und indirekt über einen Ergebnisparameter e_zg den ganzzahligen Exponenten n zur Basis 2.
frexp ist die Umkehrfunktion von ldexp.

Returnwert

Mantisse x

eine Gleitkommazahl entsprechend des Funktionstyps im Intervall [0.5, 1.0[, die die Gleichung erfüllt: wert = x * 2n.


0

falls wert gleich 0 ist (in diesem Fall ist auch der Exponent gleich 0).

Hinweise

Beachten Sie, dass das Argument e_zg ein Zeiger sein muss!

Beispiel

Normierte Darstellung der Zahl 5 zur Basis 2:

#include <stdio.h>
#include <math.h>
int main(void)
{
   double z;
   int exp;
   z = frexp((double)5, &exp);
   printf("5 = %g * 2 ** %d\n", z, exp);
   return 0;
}

Siehe auch

ldexp, modf