kazmax - Linux で自宅サーバー

logb - ライブラリコールの説明 - Linux コマンド集 一覧表

  1. 名前
  2. 書式
  3. 説明
  4. エラー
  5. 履歴
  6. 準拠
  7. 関連項目

名前

logb, logbf, logbl - 浮動小数点数の指数を取得する

書式

#include <math.h>
double logb(double x );
float logbf(float x );
long double logbl(long double x );
-lm でリンクする。

説明

これらの関数は x の指数を抽出し、浮動小数点数として返す。 FLT_RADIX が 2 の場合、 logb( x ) floor(log2( x )) と等しいが、後者の方がたぶん高速である。

x が正規化されていない場合、 logb ()は x が正規化された場合の指数を返す。

x が 0 の場合、-HUGE_VAL, -HUGE_VALF, -HUGE_VALL がそれぞれ返されて、 極 (pole) によるエラーが起きる。 x が無限大の場合、正の無限大が返される。 x が NaN の場合、NaN が返される。

エラー

エラーをチェックするためには、これらの関数を呼び出す前に errno を 0 に設定し、 feclearexcept(FE_ALL_EXCEPT) を呼び出す。 これらの関数から返った後で、 errno が 0 以外または fetestexcept(FE_INVALID | FE_DIVBYZERO | FE_OVERFLOW | FE_UNDERFLOW) が 0 以外になっている場合は、エラーが起きている。

エラーが起きていて、かつ "(math_errhandling & MATH_ERRNO)" が 0 以外の場合、 errnoERANGE に設定される。 エラーが起きていて、かつ "(math_errhandling & MATH_ERREXCEPT)" が 0 以外の場合、0 で割ったことによる浮動小数点数の例外が発生する。

x が 0 の場合、極によるエラーが起きる。

履歴

logb ()関数は 4.3BSD で導入された。

準拠

C99

関連項目