scalbn, scalbnf, scalbnl, scalbln, scalblnf, scalblnl
Yüzen nokta sayısı tamsayısal bir FLT_RADIX gücünü tarafından çarpar.
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 );
Parametreler
x
Kayan nokta değeri.exp
Tamsayı üs.
Dönüş Değeri
scalbn İşlevleri dönüş değerini x * FLT_RADIXüs başarılı olduğunda.Taşan (işaretini bağlı olarak x), scalbn döndürür +/ – HUGE_VAL; errno değeri ayarı ERANGE.
Hakkında daha fazla bilgi için errno ve döndürülen değerler bkz olası hata errno, _doserrno, _sys_errlist, and _sys_nerr.
Notlar
FLT_RADIX< float.h > içinde yerel kayan nokta taban tanımlanmıştır. İsteğe bağlı olarak ikili dosya sistemlerinde 2 ' nin bir değere sahip ve scalbn eşdeğerdir ldexp.
Because C++ allows overloading, you can call overloads of scalbn and scalbln that take and return float or long double types.Bir C programında scalbn her zaman alan bir double ve bir int ve döndürür bir double, ve scalbln her zaman alan bir double ve bir long ve döndürür bir double.
Gereksinimler
İşlev |
C üstbilgisi |
C++ üstbilgisi |
---|---|---|
scalbn, scalbnf, scalbnl, scalbln, scalblnf, scalblnl |
< math.h > |
<cmath> |
Uyumluluk ek bilgi için bkz Uyumluluk.
Örnek
// 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 );
}
Çıktı
6.4 times FLT_RADIX to the power of 3 is 51.2