マニュアルページ fesetround.3m




名前

     fesetround, fegetround - 浮動小数点丸め方向モードの制御


形式

     cc   [   flag   ...   ]   file   ...     -R/opt/SUNWspro/lib
     -L/opt/SUNWspro/lib -lm9x [ library ... ]

     #include <fenv.h>

     int fesetround(int round);

     int fegetround(void);

     #include <fenv96.h>

     int fesetround96(int round);


機能説明

     fesetround(round) は、現在の丸め方向を round で指定した方 向
     に 設定します。round で指定する方向は、次の値 (<fenv.h> に定
     義されている) の
      1 つでなければなりません。

          FE_TONEAREST        最近似値に丸める
          FE_UPWARD           正の無限量に向かって丸める
          FE_DOWNWARD         負の無限量に向かって丸める
          FE_TOWARDZERO       ゼロに向かって丸める

     デフォルトの方向は FE_TONEAREST です (-fround コンパイラフラ
     グで変更していない限り)。

     fegetround() は、現在の丸め方向を戻します。


戻り値

     fesetround は、要求した丸めモードが確立された場合にはゼロ を
     返し、そうでない場合はゼロ以外の値を返します。


属性

     次の属性については、 attributes(5) を参照してください。

     ______________________________________________
    |      属性タイプ     |         属性値        |
    |_____________________|_______________________|
    | 使用条件            |  SPROm9xs             |
    | インタフェース安定性|  標準、廃止 (次を参照)|
    | MT レベル           |  MT-安全              |
    |_____________________|_______________________|

     fesetround 及び fegetround 関数は C99 規格で定義されて い ま
     す。この関数のインタフェース安定性は「標準」です。


     これらの関数がはじめて実装された 1996 年の C99 規格の草案 で
     は、 fesetround は、要求した丸めモードが確立されている場合に
     はゼロ以外の値を返し、それ以外はゼロを返すと規定されていまし
     た。つまり、最終的な定義とは逆の内容が規格に盛り込まれたわけ
     です。規格草案の変更に対応できるように、当時の libm9x には、
     C99  規 格草案に準拠した関数 fesetround96 が用意されていまし
     た。"96" が接尾辞のこの関数は、<fenv96.h>ファイルで宣言さ れ
     ま した。現在では C99 は完成し、これらの接尾辞付き関数および
     <fenv96.h> ヘッダーファイルは必要なくなりました。この関数 の
     インタフェース安定性は「廃止」です。

     <fenv96.h> ヘッダーファイルは今後のリリースでは削除 さ れ ま
     す。アプリケーションは標準関数と <fenv.h> ヘッダーファイルを
     代わりに使用します。


関連項目

     fegetenv(3M), fesetprec(3M), attributes(5)

注意事項

     「形式」で示しているように、cc で libm9x とリンクするため に
     は、コマンド行で次のように指定することを推奨します。

          -Rinstall-path/lib -Linstall-path/lib -lm9x

     install-path には、コンパイラがインストールされている場所 を
     指 定します (デフォルトでは、/opt/SUNWspro)。libm9x とリンク
     する方法についての詳細は、『数値計算ガイド』を参照してくださ
     い。