Поделиться через


scalbn, scalbnf, scalbnl, scalbln, scalblnf, scalblnl

Умножает число с плавающей запятой на целую степень числа 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 );

Параметры

  • x
    Значение с плавающей запятой.

  • exp
    Целый показатель степени.

Возвращаемое значение

Функции scalbn возвращают значение x * FLT_RADIXexp в случае успешного выполнения. При переполнении (в зависимости от знака числа x) функция scalbn возвращает +/- HUGE_VAL; для errno задается значение ERANGE.

Дополнительные сведения о макросе errno и возможных возвращаемых значениях ошибок см. в разделе errno, _doserrno, _sys_errlist, and _sys_nerr.

Заметки

FLT_RADIX определяется в <float.h> как собственное основание числа с плавающей запятой; в двоичных системах имеет значение 2, а функция scalbn эквивалентна ldexp.

Поскольку C++ допускает перегрузку, можно вызывать перегрузки scalbn и scalbln, которые принимают и возвращают типы float или long double. В программе на языке C функция scalbn всегда принимает значение double и int и возвращает значение double, а функция scalbln всегда принимает значение double и long и возвращает значение double.

Требования

Функция

Заголовок C

Заголовок C++

scalbn, scalbnf, scalbnl, scalbln, scalblnf, scalblnl

<math.h>

<cmath>

Дополнительные сведения о совместимости см. в разделе Совместимость.

Пример

// 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

Эквивалент в .NET Framework

System::Math::Pow

См. также

Ссылки

Поддержка чисел с плавающей запятой

frexp

ldexp

modf, modff