命名空间
变体
操作

浮点环境

来自 cppreference.cn
< c‎ | numeric

浮点环境是由实现支持的一组浮点状态标志和控制模式。它是线程本地的,每个线程从父线程继承其浮点环境的初始状态。浮点运算修改浮点状态标志以指示异常结果或辅助信息。浮点控制模式的状态影响某些浮点运算的结果。

只有当 #pragma STDC FENV_ACCESS 设置为 ON 时,浮点环境的访问和修改才有意义。否则,实现可以自由地假设浮点控制模式始终是默认模式,并且浮点状态标志永远不会被测试或修改。实际上,很少有当前的编译器(例如 HP aCC、Oracle Studio 和 IBM XL)显式支持 #pragma,但大多数编译器仍然允许对浮点环境进行有意义的访问。

目录

[编辑] 类型

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

[编辑] 函数

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

[编辑]

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

[编辑] 参考

  • C23 标准 (ISO/IEC 9899:2024)
  • 7.6 浮点环境 <fenv.h> (页码: 待定)
  • 7.31.4 浮点环境 <fenv.h> (页码: 待定)
  • C17 标准 (ISO/IEC 9899:2018)
  • 7.6 浮点环境 <fenv.h> (页码: 150-156)
  • 7.31.4 浮点环境 <fenv.h> (页码: 332)
  • C11 标准 (ISO/IEC 9899:2011)
  • 7.6 浮点环境 <fenv.h> (页码: 206-215)
  • 7.31.4 浮点环境 <fenv.h> (页码: 455)
  • C99 标准 (ISO/IEC 9899:1999)
  • 7.6 浮点环境 <fenv.h> (页码: 187-196)

[编辑] 参见

C++ 文档 关于 浮点环境