logb
, , logbf
, logbl
, , _logb
_logbf
Wyodrębnia wartość wykładniczą argumentu zmiennoprzecinkowego.
Składnia
double logb(
double x
);
float logb(
float x
); // C++ only
long double logb(
long double x
); // C++ only
float logbf(
float x
);
long double logbl(
long double x
);
double _logb(
double x
);
float _logbf(
float x
);
#define logb(X) // Requires C11 or higher
Parametry
x
Wartość zmiennoprzecinkowa.
Wartość zwracana
logb
Zwraca nieprzechyconą wartość x
wykładniczą jako liczbę całkowitą ze znakiem reprezentowaną jako wartość zmiennoprzecinkowa.
Uwagi
Funkcje logb
wyodrębnią wartość wykładniczą argumentu x
zmiennoprzecinkowego , tak jakby x
były reprezentowane z nieskończonym zakresem. Jeśli argument x
jest zdenormalizowany, jest traktowany tak, jakby był znormalizowany.
Ponieważ język C++ umożliwia przeciążenie, można wywołać przeciążenia logb
tych wartości, które przyjmują i zwracają float
lub long double
wartości. W programie języka C, chyba że używasz makra <tgmath.h>
do wywoływania tej funkcji, logb
zawsze przyjmuje i zwraca wartość double
.
Jeśli używasz makra logb
z <tgmath.h>
, typ argumentu określa, która wersja funkcji jest zaznaczona. Aby uzyskać szczegółowe informacje, zobacz Typy ogólne matematyczne .
Dane wejściowe | Wyjątek SEH | Wyjątek _matherr |
---|---|---|
± QNaN, IND | Brak | _DOMAIN |
± 0 | ZERODIVIDE |
_SING |
Domyślnie stan globalny tej funkcji jest zakresem aplikacji. Aby zmienić to zachowanie, zobacz Stan globalny w CRT.
Wymagania
Procedura | Wymagany nagłówek |
---|---|
_logb |
<float.h> |
logb , , logbf , , logbl _logbf |
<math.h> |
logb Makro |
<tgmath.h> |
Aby uzyskać więcej informacji o zgodności, zobacz Zgodność.
Biblioteki
Wszystkie wersje bibliotek czasu wykonywania języka C.
Zobacz też
Obsługa obliczeń matematycznych i zmiennoprzecinkowych
frexp