Provided by: manpages-fr-dev_3.32d0.2p4-1_all bug

NOM

       frexp, frexpf, frexpl - Conversion de réel en fraction normalisée

SYNOPSIS

       #include <math.h>

       double frexp(double x, int *exp);
       float frexpf(float x, int *exp);
       long double frexpl(long double x, int *exp);

       Effectuez l'édition des liens avec l'option -lm.

   Exigences    de    macros    de   test   de   fonctionnalités   pour   la   glibc   (consultez
   feature_test_macros(7)) :

       frexpf(), frexpl() :
           _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE >= 600 || _ISOC99_SOURCE ||
           _POSIX_C_SOURCE >= 200112L
           ou cc -std=c99

DESCRIPTION

       La  fonction frexp() est utilisée pour convertir le nombre x en une fraction normalisée et
       un exposant qui est stocké dans exp.

VALEUR RENVOYÉE

       La fonction frexp() renvoie la fraction normalisée.  Si  l'argument  x  est  non  nul,  la
       fraction normalisée est x multiplié par 2^exp. La valeur absolue de la fraction normalisée
       est comprise dans l'intervalle compris entre  1/2  (inclus)  et  1  (exclu),  c'est-à-dire
       [1/2, 1[.

       Si x est nul, la fraction normalisée vaut zéro et exp prend la valeur zéro.

       Si  x  est  un  NaN (pas un nombre : « Not a Number »), un NaN est renvoyé et la valeur de
       *exp n'est pas spécifiée.

       Si x est une valeur infinie positive (resp. négative), une valeur infinie positive  (resp.
       négative) est renvoyée et la valeur de *exp n'est pas spécifiée.

ERREURS

       Aucune erreur ne se produit.

CONFORMITÉ

       C99,  POSIX.1-2001. La variante renvoyant un double est également conforme à SVr4, BSD 4.3
       et C89.

EXEMPLE

       Le programme ci-dessous affiche les résultats suivants :

           $ ./a.out 2560
           frexp(2560, &e) = 0.625: 0.625 * 2^12 = 2560
           $ ./a.out -4
           frexp(-4, &e) = -0.5: -0.5 * 2^3 = -4

   Source du programme

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

       int
       main(int argc, char *argv[])
       {
           double x, r;
           int exp;

           x = strtod(argv[1], NULL);
           r = frexp(x, &exp);

           printf("frexp(%g, &e) = %g: %g * %d^%d = %g\n",
                  x, r, r, FLT_RADIX, exp, x);
           exit(EXIT_SUCCESS);
       }

VOIR AUSSI

       ldexp(3), modf(3)

COLOPHON

       Cette page fait partie de la publication 3.32 du projet man-pages Linux.  Une  description
       du  projet  et  des  instructions  pour  signaler  des  anomalies  peuvent être trouvées à
       l'adresse <URL:http://www.kernel.org/doc/man-pages/>.

TRADUCTION

       Depuis   2010,   cette   traduction   est   maintenue   à   l'aide   de    l'outil    po4a
       <URL:http://po4a.alioth.debian.org/>  par  l'équipe  de  traduction francophone au sein du
       projet perkamon <URL:http://perkamon.alioth.debian.org/>.

       Christophe  Blaess  <URL:http://www.blaess.fr/christophe/>   (1996-2003),   Alain   Portal
       <URL:http://manpagesfr.free.fr/>  (2003-2006). Florentin Duneau et l'équipe francophone de
       traduction de Debian (2006-2009).

       Veuillez     signaler     toute     erreur     de     traduction     en     écrivant     à
       <debian-l10n-french@lists.debian.org>   ou   par   un  rapport  de  bogue  sur  le  paquet
       manpages-fr.

       Vous pouvez toujours avoir accès à la version anglaise de  ce  document  en  utilisant  la
       commande « man -L C <section> <page_de_man> ».

                                        20 septembre 2010                                FREXP(3)