C ++ fetestexcept () - C ++ Standard Library

A fetestexcept () függvény a C ++ -ban határozza meg, hogy a lebegőpontos kivételek meghatározott részhalmazai közül melyik van jelenleg beállítva.

A fetestexcept () függvény a fejlécfájlban van meghatározva.

fetestexcept () prototípus

 int fetestexcept (int excepts);

A fetestexcept () függvény teszteli, hogy a kivételek által meghatározott lebegőpontos kivétel jelenleg be van-e állítva. Az excepts argumentum lebegőpontos OR a lebegőpontos kivétel makrók közül.

fetestexcept () Paraméterek

  • kivételek: A Bitmask felsorolja a tesztelendő kivételjelzőket.

fetestexcept () Visszatérési érték

  • A lebegőpontos kivétel makrók bitenkénti VAGYA, amelyek mind szerepelnek a kivételek között, és megfelelnek a jelenleg beállított lebegőpontos kivételeknek.

Példa: Hogyan működik a fetestexcept () függvény?

 #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; )

A program futtatásakor a kimenet a következő lesz:

 Felemelt kivételek: Nincsenek Felemelt kivételek: FE_DIVBYZERO FE_INVALID Felemelt kivételek: Nincsenek

érdekes cikkek...