C99 中的 fenv.h 是否存在于 C++11 中?还有其他方法可以使用像 fesetround 这样的功能吗?也许提升?
gcc 4.7.2 编译此代码:
#include <cfenv>
int main() {}
http://liveworkspace.org/code/ffbd8e8a24633c7e74f7bcead3b1a287
C99 中的 fenv.h 是否存在于 C++11 中?还有其他方法可以使用像 fesetround 这样的功能吗?也许提升?
gcc 4.7.2 编译此代码:
#include <cfenv>
int main() {}
http://liveworkspace.org/code/ffbd8e8a24633c7e74f7bcead3b1a287
fenv.h
fromC99
存在C++11
于?
是的,它确实。
参考:
26.3 The floating-point environment [cfenv]
Standard C++11 26.3.1 Header <cfenv> synopsis [cfenv.syn]
还有其他使用函数的方法
fesetround()
吗?也许提升?
该函数fesetround()
已由cfenv
C++11 提供。
此外,fenv.h
还存在于 C++11 中,以提供对 c 标准头文件的向后兼容性。它涵盖在:
D.5 C standard library headers [depr.c.headers]
使用
fenv.h
or 和有什么不一样cfenv
?
包括在命名空间和可能在全局命名空间cfenv
中导入符号名称。包括在全局命名空间和可能在命名空间中导入符号名称。std
fenv.h
std
是的,确实如此。cfenv
似乎是正确的标题,它只是在 C++11 中添加的。