Partager via


frexp

obtient la mantisse et l'exposant d'un nombre à virgule flottante.

double frexp(
   double x,
   int *expptr 
);
float frexp(
   float x,
   int * expptr
);  // C++ only
long double frexp(
   long double x,
   int * expptr
);  // C++ only

Paramètres

  • x
    valeur à virgule flottante.

  • expptr
    pointeur à l'exposant entier stocké.

Valeur de retour

frexp retourne la mantisse.Si x est 0, la fonction retourne 0 pour la mantisse et l'exposant.si expptr est NULL, le gestionnaire de paramètre non valide est appelé comme décrit dans Validation des paramètres.Si est autorisé à l'exécution de se poursuivre, des ensembles errno de cette fonction à EINVAL et retourne 0.

Notes

La fonction d' frexp détaille la valeur à virgule flottante (x) en mantisse (m) et exposant (n), de sorte que la valeur absolue d' m est supérieur ou égal à 0,5 et inférieure à 1,0, et x = m*2.nL'exposant entier n est stocké dans l'emplacement pointé par expptr.

C++ permet la surcharge, vous pouvez appeler des surcharges d' frexp.Dans un programme c, frexp toujours prend un double et un entier et retourne un double.

Configuration requise

Fonction

en-tête requis

frexp

<math.h>

Pour des informations de compatibilité supplémentaires, consultez compatibilité dans l'introduction.

Exemple

// crt_frexp.c
// This program calculates frexp( 16.4, &n )
// then displays y and n.
 

#include <math.h>
#include <stdio.h>

int main( void )
{
   double x, y;
   int n;

   x = 16.4;
   y = frexp( x, &n );
   printf( "frexp( %f, &n ) = %f, n = %d\n", x, y, n );
}
  

Équivalent .NET Framework

Non applicable. Pour appeler la fonction C standard, utilisez PInvoke. Pour plus d'informations, consultez l' exemples d'appel de code non managé.

Voir aussi

Référence

Support à virgule flottante

ldexp

modf, modff