logb(3) Obtenir l'exposant d'un nombre à virgule flottante

Other Alias

logbf, logbl

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 (consultez feature_test_macros(7)) :

logb() :

_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE >= 500 || _XOPEN_SOURCE && _XOPEN_SOURCE_EXTENDED || _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L
ou cc -std=c99

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

DESCRIPTION

Ces fonctions extraient l'exposant de la représentation interne en virgule flottante de x et le renvoie 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 dé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 est 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 virgule flottante de division par zéro (FE_DIVBYZERO) est levée.

Ces fonctions ne positionnent pas errno.

ATTRIBUTS

Multithreading (voir pthreads(7))

Les fonctions logb(), logbf() et logbl() sont sûres dans un contexte multithread.

CONFORMITÉ

C99, POSIX.1-2001.

COLOPHON

Cette page fait partie de la publication 3.65 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/>.

Christophe Blaess <http://www.blaess.fr/christophe/> (1996-2003), Alain Portal <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 à <[email protected]> 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> ».