C ++ fetestexcept () - Biblioteca estándar de C ++

La función fetestexcept () en C ++ determina cuál de los subconjuntos especificados de excepciones de punto flotante está establecido actualmente.

La función fetestexcept () se define en el archivo de encabezado.

prototipo fetestexcept ()

 int fetestexcept (int excepciones);

La función fetestexcept () prueba si la excepción de punto flotante especificada por excepciones está establecida actualmente. El argumento except es un OR bit a bit de las macros de excepción de punto flotante.

Parámetros fetestexcept ()

  • excepciones: Máscara de bits que enumera los indicadores de excepción para probar.

fetestexcept () Valor de retorno

  • OR bit a bit de las macros de excepción de punto flotante que están incluidas en excepciones y corresponden a excepciones de punto flotante establecidas actualmente.

Ejemplo: ¿Cómo funciona la función fetestexcept ()?

 #include #include #include #pragma STDC FENV_ACCESS ON using namespace std; void print_exceptions() ( cout << "Raised exceptions: "; if(fetestexcept(FE_ALL_EXCEPT)) ( if(fetestexcept(FE_DIVBYZERO)) cout << "FE_DIVBYZERO "; if(fetestexcept(FE_INEXACT)) cout << "FE_INEXACT "; if(fetestexcept(FE_INVALID)) cout << "FE_INVALID "; if(fetestexcept(FE_OVERFLOW)) cout << "FE_OVERFLOW "; if(fetestexcept(FE_UNDERFLOW)) cout << "FE_UNDERFLOW "; ) else cout << "None"; cout << endl; ) int main(void) ( print_exceptions(); feraiseexcept(FE_INVALID|FE_DIVBYZERO); print_exceptions(); feclearexcept(FE_ALL_EXCEPT); print_exceptions(); return 0; )

Cuando ejecute el programa, la salida será:

 Excepciones planteadas: Ninguna Excepciones planteadas: FE_DIVBYZERO FE_INVALID Excepciones planteadas: Ninguna

Articulos interesantes...