SCALBLN(3)

NOM
scalbn, scalbnf, scalbnl, scalbln, scalblnf, scalblnl - Multiplier un nombre en virgule flottante par un entier puissance d'une base

SYNOPSIS
#include <math.h>

double scalbln(double x, long int exp);
float scalblnf(float x, long int exp);
long double scalblnl(long double x, long int exp);

double scalbn(double x, int exp);
float scalbnf(float x, int exp);
long double scalbnl(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)) :

scalbln(), scalblnf(), scalblnl() :
    _XOPEN_SOURCE >= 600 || _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L
    ou cc -std=c99
scalbn(), scalbnf(), scalbnl() :
    _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE >= 600 || _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L
    ou cc -std=c99

DESCRIPTION
Ces fonctions multiplient leur premier paramètre x par FLT_RADIX (probablement 2) à la puissance exp, c'est-à-dire :
    x * FLT_RADIX ** exp
La définition de FLT_RADIX peut être obtenue en incluant <float.h>.

VALEUR RENVOYÉE
En cas de réussite, ces fonctions renvoient x * FLT_RADIX ** exp. Si x est un NaN, la valeur renvoyée est un NaN. Si x est une valeur infinie positive (resp. négative), une valeur infinie positive est renvoyée (resp. négative). Si x vaut +0 (resp. -0), +0 (resp. -0) est renvoyé. En cas de dépassement pour le résultat, une erreur d'intervalle se produit et les fonctions renvoient HUGE_VAL, HUGE_VALF ou HUGE_VALL, resp. avec le même signe que x. En cas de soupassement (« underflow »), une erreur d'intervalle se produit et les fonctions renvoient zéro avec le même signe que x.

ERREURS
Consultez math_error(7) pour savoir comment déterminer qu'une erreur est survenue lors de l'appel de ces fonctions.

Les erreurs suivantes peuvent se produire :

Erreur d'intervalle, dépassement
    Une exception en virgule flottante de dépassement (FE_OVERFLOW) est levée.

Erreur d'intervalle, soupassement (« underflow »)
    Une exception en virgule flottante de soupassement (FE_UNDERFLOW) est levée.

Ces fonctions ne positionnent pas errno.

VERSIONS
Ces fonctions ont été introduites dans la glibc dans sa version 2.1.

ATTRIBUTS

  Multithreading (voir pthreads(7))
Les fonctions scalbn(), scalbnf(), scalbnl(), scalbln(), scalblnf() et scalblnl() sont sûres dans un contexte multithread.

CONFORMITÉ
C99, POSIX.1-2001.

NOTES
Ces fonctions diffèrent des fonctions obsolètes décrites dans scalb(3) par le type de leur deuxième paramètre. Les fonctions décrites sur cette page ont un deuxième paramètre de type entier, tandis que celle de scalb(3) ont un deuxième paramètre de type double. Si FLT_RADIX vaut 2 (ce qui est le cas en général), alors scalbn() est équivalent à ldexp(3).

VOIR AUSSI
ldexp(3), scalb(3)

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

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

Alain Portal <http://manpagesfr.free.fr/> (2008).

Veuillez signaler toute erreur de traduction en écrivant à <perkamon-fr@traduc.org>.

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