來自C99的fenv.h是否存在於C++ 11中?有沒有其他的方式來使用功能,如fesetround?也許提升?來自C99的fenv.h C++ 11
GCC 4.7.2編譯此代碼:
#include <cfenv>
int main() {}
http://liveworkspace.org/code/ffbd8e8a24633c7e74f7bcead3b1a287
來自C99的fenv.h是否存在於C++ 11中?有沒有其他的方式來使用功能,如fesetround?也許提升?來自C99的fenv.h C++ 11
GCC 4.7.2編譯此代碼:
#include <cfenv>
int main() {}
http://liveworkspace.org/code/ffbd8e8a24633c7e74f7bcead3b1a287
Yes, it does。 cfenv
似乎是正確的標題,它只是在C++ 11中添加的。
是否
fenv.h
從C99
存在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
或cfenv
之間的區別?
包括cfenv
在std
命名空間和在全局命名空間導入符號的名稱可能。 包括fenv.h
在全局命名空間中導入符號名稱,並在std
名稱空間中導入可能的。