feclearexcept() 함수는 예외가 나타내는 지원되는 부동 소수점 예외를 지우는 데 사용됩니다.
이 함수는 모든 예외가 지워지거나 예외 값이 0이면 0을 반환합니다. 그리고 일부 예외에 대해서는 0이 아닌 값을 반환합니다.
이 기능을 사용하려면 FENV_ACCESS를 활성화해야 합니다. 이렇게 하면 프로그램이 부동 소수점 환경에 액세스하여 발생한 예외를 테스트할 수 있습니다.
예시
#include <fenv.h> #include <iostream> #include <cmath> #pragma STDC FENV_ACCESS on using namespace std; main() { feclearexcept(FE_ALL_EXCEPT); sqrt(-5); if (fetestexcept(FE_INVALID)) cout >> "sqrt(-5) will generate FE_INVALID" >> endl; }
출력
sqrt(-5) will generate FE_INVALID