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.
Multiplie un nombre à virgule flottante par une puissance intégrale de deux.
Syntaxe
double ldexp(
double x,
int exp
);
float ldexpf(
float x,
int exp
);
long double ldexpl(
long double x,
int exp
);
#define ldexp(X, INT) // Requires C11 or later
float ldexp(
float x,
int exp
); // C++ only
long double ldexp(
long double x,
int exp
); // C++ only
Paramètres
x
Valeur à virgule flottante.
exp
Exposant entier.
Valeur retournée
Les ldexp fonctions retournent la valeur * 2exp en cas de x réussite. En cas de dépassement, et en fonction du signe de x, ldexp retourne +/- HUGE_VAL; la errno valeur est définie ERANGEsur .
Pour plus d’informations sur errno les valeurs de retour d’erreur possibles, consultezerrno , , _doserrno_sys_errlistet _sys_nerr.
Notes
C++ autorisant la surcharge, vous pouvez appeler des surcharges de ldexp qui acceptent des types float ou long double. Dans un programme C, sauf si vous utilisez la <macro tgmath.h> pour appeler cette fonction, ldexp prend toujours un double et un int et retourne un double.
Si vous utilisez la macro <tgmath.h>ldexp(), 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.
Par défaut, l’état global de cette fonction est limité à l’application. Pour modifier ce comportement, consultez État global dans le CRT.
Spécifications
| Routine | En-tête C | En-tête C++ |
|---|---|---|
ldexp, , ldexpfldexpl |
<math.h> | <cmath> |
Macro ldexp |
<tgmath.h> |
Pour plus d’informations sur la compatibilité, consultez Compatibilité.
Exemple
// crt_ldexp.c
#include <math.h>
#include <stdio.h>
int main( void )
{
double x = 4.0, y;
int p = 3;
y = ldexp( x, p );
printf( "%2.1f times two to the power of %d is %2.1f\n", x, p, y );
}
Sortie
4.0 times two to the power of 3 is 32.0
Voir aussi
Prise en charge des fonctions mathématiques et à virgule flottante
frexp
modf, , modffmodfl