Fonction de bibliothèque C - frexp ()

La description

La fonction de bibliothèque C double frexp(double x, int *exponent) la valeur de retour est la mantisse et l'entier pointé par exponentest l'exposant. La valeur résultante estx = mantissa * 2 ^ exponent.

Déclaration

Voici la déclaration de la fonction frexp ().

double frexp(double x, int *exponent)

Paramètres

  • x - Il s'agit de la valeur en virgule flottante à calculer.

  • exponent - Ceci est le pointeur vers un int objet où la valeur de l'exposant doit être stockée.

Valeur de retour

Cette fonction renvoie la fraction normalisée. Si l'argument x n'est pas nul, la fraction normalisée estxfois une puissance de deux, et sa valeur absolue est toujours comprise entre 1/2 (inclus) et 1 (exclusif). Six est zéro, alors la fraction normalisée est zéro et zéro est stocké dans exp.

Exemple

L'exemple suivant montre l'utilisation de la fonction frexp ().

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

int main () {
   double x = 1024, fraction;
   int e;
   
   fraction = frexp(x, &e);
   printf("x = %.2lf = %.2lf * 2^%d\n", x, fraction, e);
   
   return(0);
}

Compilons et exécutons le programme ci-dessus pour produire le résultat suivant -

x = 1024.00 = 0.50 * 2^11