std::feclearexcept
De cppreference.com.
|
|
This page has been machine-translated from the English version of the wiki using Google Translate.
The translation may contain errors and awkward wording. Hover over text to see the original version. You can help to fix errors and improve the translation. For instructions click here. |
| Défini dans l'en-tête <cfenv>
|
||
| int feclearexcept( int excepts ); |
(depuis C++11) | |
Les tentatives visant à effacer les exceptions en virgule flottante qui sont répertoriées dans la
excepts l'argument masque de bits, qui est un OU bit à bit de la flottant point exception des macros .Original:
Attempts to clear the floating-point exceptions that are listed in the bitmask argument
excepts, which is a bitwise OR of the flottant point exception des macros.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Sommaire |
[modifier] Paramètres
| excepts | - | masque la liste des drapeaux d'exceptions à effacer
Original: bitmask listing the exception flags to clear The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
[modifier] Retourne la valeur
0 si toutes les exceptions indiquées ont été avec succès effacée ou si
excepts est égal à zéro. Retourne une valeur non nulle en cas d'erreur .Original:
0 if all indicated exceptions were successfully cleared or if
excepts is zero. Returns a non-zero value on error.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
[modifier] Exemple
#include <iostream> #include <cfenv> #include <cmath> #pragma STDC FENV_ACCESS ON volatile double zero = 0.0; // volatile not needed where FENV_ACCESS is supported volatile double one = 1.0; // volatile not needed where FENV_ACCESS is supported int main() { std::feclearexcept(FE_ALL_EXCEPT); std::cout << "1.0/0.0 = " << 1.0 / zero << '\n'; if(std::fetestexcept(FE_DIVBYZERO)) { std::cout << "division by zero reported\n"; } else { std::cout << "divsion by zero not reported\n"; } std::feclearexcept(FE_ALL_EXCEPT); std::cout << "1.0/10 = " << one/10 << '\n'; if(std::fetestexcept(FE_INEXACT)) { std::cout << "inexact result reported\n"; } else { std::cout << "inexact result not reported\n"; } std::feclearexcept(FE_ALL_EXCEPT); std::cout << "sqrt(-1) = " << std::sqrt(-1) << '\n'; if(std::fetestexcept(FE_INVALID)) { std::cout << "invalid result reported\n"; } else { std::cout << "invalid result not reported\n"; } }
Résultat :
1.0/0.0 = inf division by zero reported 1.0/10 = 0.1 inexact result reported sqrt(-1) = -nan invalid result reported
[modifier] Voir aussi
| (C++11) |
détermine quels sont les indicateurs spécifiés état à virgule flottante sont définies Original: determines which of the specified floating-point status flags are set The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (fonction) |