Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Récupère un entier qui représente l’exposant en base 2 non biaisé de la valeur spécifiée.
Syntaxe
int ilogb(
double x
);
int ilogb(
float x
); //C++ only
int ilogb(
long double x
); //C++ only
int ilogbf(
float x
);
int ilogbl(
long double x
);
#define ilogbl(X) // Requires C11 or later
Paramètres
x
Valeur spécifiée.
Valeur retournée
Si elle réussit, ces fonctions retournent l’exposant base 2 d’une x signed int valeur.
Sinon, les fonctions retournent l’une des valeurs suivantes, définies dans <math.h> :
| Input | Result |
|---|---|
| ±0 | FP_ILOGB0 |
| ± INF, ± NAN, IND | FP_ILOGBNAN |
Les erreurs sont signalées comme spécifié dans _matherr.
Notes
C++ autorisant la surcharge, vous pouvez appeler des surcharges de ilogb qui acceptent et retournent des types float et long double. Dans un programme C, sauf si vous utilisez la macro <tgmath.h> pour appeler cette fonction, ilogb prend toujours et retourne double.
Si vous utilisez la macro <tgmath.h>ilogb(), le type de l’argument détermine la version de la fonction sélectionnée. Pour plus d’informations, consultez les mathématiques génériques de type.
Appeler cette fonction revient à appeler la fonction logb équivalente, puis à effectuer un cast de la valeur de retour vers int.
Spécifications
| Routine | En-tête C | En-tête C++ |
|---|---|---|
ilogb, , ilogbfilogbl |
<math.h> | <cmath> |
Macro ilogb |
<tgmath.h> |
Pour plus d’informations sur la compatibilité, consultez Compatibility.
Voir aussi
Référence de fonction alphabétique
frexp
logb, , logbflogbl, , _logb_logbf