浮点环境

来自cppreference.com
< c‎ | numeric

浮点环境是浮点状态标志及实现所支持的控制模式的集合。它是线程局域的,每个线程从亲线程继承其浮点环境的初始状态。浮点运算会修改指示反常值或补助信息的浮点状态标志。浮点控制模式影响浮点运算的结果。

仅若设置 #pragma STDC FENV_ACCESSON ,浮点环境的访问及修改才有意义。否则具体实现可以自由地假设浮点控制模式始终是默认值,而且浮点状态标志始终不被检测或修改。实际上,当前只有少数编译器,如 HP aCC 、 Oracle Studio 和 IBM XL 显式支持 #pragma ,但总之多数编译器允许有意义地访问浮点环境。

目录

[编辑] 类型

定义于头文件 <fenv.h>
fenv_t 表示整体浮点环境的类型
fexcept_t 集中表示所有浮点状态标志的类型

[编辑] 函数

清除指定的浮点状态标志
(函数) [编辑]
确认设置了哪些浮点状态标志
(函数) [编辑]
引发指定的浮点异常
(函数) [编辑]
将指定的浮点状态标志从浮点环境复制或复制到浮点环境
(函数) [编辑]
获得或设置舍入方向
(函数) [编辑]
保存或恢复当前浮点环境
(函数) [编辑]
保存环境,清除所有状态标志并忽略所有未来错误
(函数) [编辑]
恢复浮点环境并引发之前引发过的异常
(函数) [编辑]

[编辑]

浮点异常
(宏常量) [编辑]
浮点舍入方向
(宏常量) [编辑]
默认浮点环境
(宏常量) [编辑]

[编辑] 引用

  • C11 standard (ISO/IEC 9899:2011):
  • 7.6 Floating-point environment <fenv.h> (p: 206-215)
  • 7.31.4 Floating-point environment <fenv.h> (p: 455)
  • C99 standard (ISO/IEC 9899:1999):
  • 7.6 Floating-point environment <fenv.h> (p: 187-196)

[编辑] 参阅

浮点环境C++ 文档