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 vers 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ètres invalide est appelé comme décrit dans Validation de paramètre. Si l'exécution est autorisée à se poursuivre, cette fonction définit errno à la valeur EINVAL et retourne 0.
Notes
La fonction frexp décompose la valeur à virgule flottante (x) en une mantisse (m) et un exposant (n), de sorte que la valeur absolue de m est supérieure ou égale à 0,5 et inférieure à 1,0, et que x = m. *2.n L'exposant entier n est enregistré à l'emplacement désigné par expptr.
Comme le C++ permet la surcharge de méthode, vous pouvez appeler des surcharges de frexp. Dans un programme C, frexp prend toujours un double et un entier et retourne une valeur double.
Configuration requise
Fonction |
En-tête requis |
---|---|
frexp |
<math.h> |
Pour plus d'informations sur la compatibilité, 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 Exemples d'appel de plateforme.