scalbn, scalbnf, scalbnl, scalbln, scalblnf, scalblnl

 

Para obtener la documentación más reciente de Visual Studio 2017 RC, consulte Documentación de Visual Studio 2017 RC.

Multiplica un número de punto flotante por una potencia integral de FLT_RADIX.

double scalbn(  
   double x,  
   int exp   
);  
float scalbn(  
   float x,  
   int exp  
);  // C++ only  
long double scalbn(  
   long double x,  
   int exp  
);  // C++ only   
float scalbnf(  
   float x,  
   int exp  
);   
long double scalbnl(  
   long double x,  
   int exp  
);  
double scalbln(  
   double x,  
   long exp   
);  
float scalbln(  
   float x,  
   long exp  
);  // C++ only  
long double scalbln(  
   long double x,  
   long exp  
);  // C++ only   
float scalblnf(  
   float x,  
   long exp  
);   
long double scalblnl(  
   long double x,  
   long exp  
);  

Parámetros

x
Valor de punto flotante.

exp
Exponente de entero.

El scalbn funciones devuelven el valor de x * FLT_RADIX exp cuando se realiza correctamente. En caso de desbordamiento, y según cuál sea el signo de x, scalbn devuelve +/– HUGE_VAL; el valor de errno se establece en ERANGE.

Para obtener más información acerca de errno y error posibles valores devueltos, consulte errno, _doserrno, _sys_errlist y _sys_nerr.

FLT_RADIXse define en <float.h>como la base de punto flotante nativa; en los sistemas binarios, tiene un valor de 2, y scalbn es equivalente a ldexp.</float.h>

Como C++ permite las sobrecargas, puede llamar a las sobrecargas de scalbn y scalbln, que toman y devuelven los tipos float o long double. En un programa C, scalbn siempre toma un double y un int y devuelve un double, mientras que scalbln siempre toma un double y un long y devuelve un double.

FunciónEncabezado CEncabezado C++
scalbn, scalbnf, scalbnl, scalbln, scalblnf, scalblnl<math.h><>>

Para obtener más información sobre compatibilidad, vea Compatibilidad.

// crt_scalbn.c  
// Compile using: cl /W4 crt_scalbn.c  
#include <math.h>  
#include <stdio.h>  
  
int main( void )  
{  
   double x = 6.4, y;  
   int p = 3;  
  
   y = scalbn( x, p );  
   printf( "%2.1f times FLT_RADIX to the power of %d is %2.1f\n", x, p, y );  
}  

6.4 times FLT_RADIX to the power of 3 is 51.2  

System::Math::Pow

Compatibilidad de punto flotante
frexp
ldexp
modf, modff, modfl

Mostrar: