跳转到内容

C 编程/fenv.h

来自维基教科书,开放的书籍,为了开放的世界

fenv.h 是一个头文件,包含用于操作浮点环境的各种函数和宏。[1]

此头文件声明了两种类型,fenv_t(表示整个浮点环境)和 fexcept_t(表示浮点状态标志)。[1] 它还声明了几个特征宏,以 FE_ 开头,并以大写字母结尾。

除了 fegetroundfetestexcept 外,这些函数在成功/失败时返回零/非零。

声明 描述
int feclearexcept(int excepts); 清除由 excepts 指定的异常
int fegetenv(fenv_t *penv); 将当前浮点环境存储在 penv
int fegetexceptflag(fexcept_t *pflag, int excepts); 将当前状态标志存储在 pflags
int fegetround(void); 检索当前舍入方向
int feholdexcept(fenv_t *penv); 将当前浮点环境保存到 penv 并清除所有异常
int feraiseexcept(int excepts); 引发浮点异常
int fesetenv(const fenv_t *penv); 将当前浮点环境设置为 penv
int fesetexceptflag(const fexcept_t *pflags, int excepts); 将当前状态标志设置为存储在 pflags 中的那些标志
int fesetround(int round); 将当前舍入方向设置为 round
int fetestexcept(int excepts); 测试是否已引发某些异常
int feupdateenv(const fenv_t *penv); 恢复浮点环境 penv,但保留当前异常
int fesetprec(int prec) 将精度模式设置为 prec 指定的值。

参考文献

[编辑 | 编辑源代码]
  1. a b fenv.h: 浮点环境 – 基本定义参考,The Single UNIX® Specification,Issue 7 from The Open Group
华夏公益教科书