Standard library header <fenv.h> (C99)
From cppreference.net
このヘッダは 浮動小数点環境 ライブラリの一部です。
目次 |
型
|
ヘッダーで定義
<fenv.h>
|
|
| fenv_t | 浮動小数点環境全体を表す型 |
| fexcept_t | すべての浮動小数点ステータスフラグを集合的に表す型 |
関数
|
(C99)
|
指定された浮動小数点ステータスフラグをクリアする
(関数) |
|
(C99)
|
指定された浮動小数点ステータスフラグのうち設定されているものを判定する
(関数) |
|
(C99)
|
指定された浮動小数点例外を発生させる
(関数) |
|
(C99)
(C99)
|
指定された浮動小数点ステータスフラグの状態を浮動小数点環境から取得、または浮動小数点環境へ設定する
(関数) |
|
(C99)
(C99)
|
丸め方向を取得または設定する
(関数) |
|
(C99)
|
現在の浮動小数点環境を保存または復元する
(関数) |
|
(C99)
|
環境を保存し、すべてのステータスフラグをクリアして将来のすべてのエラーを無視する
(関数) |
|
(C99)
|
浮動小数点環境を復元し、以前に発生した例外を発生させる
(関数) |
マクロ
|
浮動小数点例外
(マクロ定数) |
|
|
浮動小数点丸め方向
(マクロ定数) |
|
|
(C99)
|
デフォルト浮動小数点環境
(マクロ定数) |
概要
#define __STDC_VERSION_FENV_H__ 202311L #define FE_ALL_EXCEPT /* 説明を参照 */ #define FE_DIVBYZERO /* 説明を参照 */ #define FE_INEXACT /* 説明を参照 */ #define FE_INVALID /* 説明を参照 */ #define FE_OVERFLOW /* 説明を参照 */ #define FE_UNDERFLOW /* 説明を参照 */ #define FE_DOWNWARD /* 説明を参照 */ #define FE_TONEARESTFROMZERO /* 説明を参照 */ #define FE_TONEAREST /* 説明を参照 */ #define FE_TOWARDZERO /* 説明を参照 */ #define FE_UPWARD /* 説明を参照 */ #define FE_DFL_ENV /* 説明を参照 */ #define FE_DFL_MODE /* 説明を参照 */ #define fenv_t /* 説明を参照 */ #define fexcept_t /* 説明を参照 */ #define femode_t /* 説明を参照 */ #pragma STDC FENV_ACCESS /*on-off-switch*/ #pragma STDC FENV_ROUND direction #pragma STDC FENV_ROUND FE_DYNAMIC // 関数 int feclearexcept(int excepts); int fegetexceptflag(fexcept_t* flagp, int excepts); int feraiseexcept(int excepts); int fesetexcept(int excepts); int fesetexceptflag(const fexcept_t* flagp, int excepts); int fetestexceptflag(const fexcept_t* flagp, int excepts); int fetestexcept(int excepts); int fegetmode(femode_t* modep); int fegetround(void); int fesetmode(const femode_t* modep); int fesetround(int rnd); int fegetenv(fenv_t* envp); int feholdexcept(fenv_t* envp); int fesetenv(const fenv_t* envp); int feupdateenv(const fenv_t* envp); // __STDC_IEC_60559_DFP__ が定義されている実装のみ: #define FE_DEC_DOWNWARD /* 実装定義 */ #define FE_DEC_TONEARESTFROMZERO /* 実装定義 */ #define FE_DEC_TONEAREST /* 実装定義 */ #define FE_DEC_TOWARDZERO /* 実装定義 */ #define FE_DEC_UPWARD /* 実装定義 */ #pragma STDC FENV_DEC_ROUND /*dec-direction*/ int fe_dec_getround(void); int fe_dec_setround(int rnd); // 実装が F.2.2 の推奨プラクティスに従う場合のみ: #define FE_SNANS_ALWAYS_SIGNAL /* 実装定義 */