Available in

(3) (3)/fr (3)/ja

Contents

NOM

logb, logbf, logbl − Obtenir l’exposant d’un nombre à virgule flottante

SYNOPSIS

#include <math.h>

double logb(double x);
float logbf(float
x);
long double logbl(long double
x);

Effectuez l’édition des liens avec l’option −lm.

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

logb() _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE >= 500 || _ISOC99_SOURCE ; ou cc −std=c99
logbf
(), logbl() : _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE>= 600 || _ISOC99_SOURCE ; ou cc −std=c99

DESCRIPTION

Ces fonctions extraient l’exposant de la représentation interne en virgule flottante de x et le renvoient sous forme de nombre en virgule flottante. La constante entière FLT_RADIX, définie dans <float.h>, indique la base utilisée pour la représentation des nombres en virgule flottante du système. Si FLT_RADIX vaut 2, alors logb(x) est équivalent à floor(log2(x)) et elle est probablement plus rapide.

Si x est sous normalisé, logb() renvoie l’exposant x comme s’il était normalisé.

VALEUR RENVOYÉE

En cas de réussite, ces fonctions renvoient l’exposant de x.

Si x est un NaN, la valeur renvoyée et un NaN.

Si x est nul, une erreur de pôle se produit et les fonctions renvoient −HUGE_VAL, −HUGE_VALF ou −HUGE_VALL, respectivement.

Si x est une valeur infinie positive ou négative, l’infini positif est renvoyé.

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 de pôle : x est nul

Une exception de la virgule flottante de division par zéro (FE_DIVBYZERO) est levée.

Ces fonctions ne positionnent pas errno.

CONFORMITÉ

C99, POSIX.1−2001.

VOIR AUSSI

ilogb(3), log(3)

COLOPHON

Cette page fait partie de la publication 3.23 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

Cette page de manuel a été traduite et mise à jour par Christophe Blaess <http://www.blaess.fr/christophe/>; entre 1996 et 2003, puis par Alain Portal <aportal AT univ−montp2 DOT fr> jusqu’en 2006, et mise à disposition sur http://manpagesfr.free.fr/.

Les mises à jour et corrections de la version présente dans Debian sont directement gérées par Florentin Duneau <fduneau [AT] gmail.com> et l’équipe francophone de traduction de Debian.

Veuillez signaler toute erreur de traduction en écrivant à <debian−l10n−french [AT] lists.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> ».

COMMENTS

blog comments powered by Disqus