feraiseexcept
Déclenche les exceptions de virgule flottante spécifiées.
Syntaxe
int feraiseexcept(
int excepts
);
Paramètres
excepts
Exceptions de virgule flottante à déclencher.
Valeur retournée
Si toutes les exceptions spécifiées sont correctement déclenchées, retourne 0.
Notes
La fonction feraiseexcept
tente de déclencher les exceptions de virgule flottante spécifiées par excepts
. La feraiseexcept
fonction prend en charge ces macros d’exception, définies dans <fenv.h> :
Macros d’exception | Description |
---|---|
FE_DIVBYZERO |
Une erreur de singularité ou de pôle s’est produite dans une opération à virgule flottante précédente ; une valeur infinie a été créée. |
FE_INEXACT |
La fonction a été forcée d’arrondir le résultat stocké d’une opération à virgule flottante précédente. |
FE_INVALID |
Une erreur de domaine s’est produite pendant une opération à virgule flottante précédente. |
FE_OVERFLOW |
Une erreur de plage s’est produite ; le résultat d’une opération à virgule flottante précédente était trop grand pour être représenté. |
FE_UNDERFLOW |
Le résultat d’une opération à virgule flottante précédente était trop petit pour être représenté avec une précision complète ; une valeur dénormalisée a été créée. |
FE_ALL_EXCEPT |
Opération OR au niveau du bit de toutes les exceptions de virgule flottante prises en charge. |
L’argument excepts
peut être zéro, l’une des valeurs de macro d’exception ou l’opération OR au niveau du bit d’au moins deux macros d’exception prises en charge. Si l’une des macros d’exception spécifiées est FE_OVERFLOW
ou FE_UNDERFLOW
si l’exception FE_INEXACT
peut être levée en tant qu’effet secondaire.
Pour utiliser cette fonction, vous devez désactiver les optimisations à virgule flottante qui peuvent empêcher l’accès à l’aide de la directive #pragma fenv_access(on)
avant l’appel. Pour plus d’informations, consultez fenv_access
.
Spécifique à Microsoft : les exceptions spécifiées sont levées excepts
dans l’ordre FE_INVALID
, , FE_DIVBYZERO
FE_OVERFLOW
, FE_UNDERFLOW
, FE_INEXACT
. Toutefois, FE_INEXACT
peut être déclenché quand FE_OVERFLOW
ou FE_UNDERFLOW
est déclenché, même s’il n’est pas spécifié dans excepts
.
Spécifications
Fonction | En-tête C | En-tête C++ |
---|---|---|
feraiseexcept |
<fenv.h> | <cfenv> |
Pour plus d’informations sur la compatibilité, consultez Compatibility.
Voir aussi
Référence de fonction alphabétique
fesetexceptflag
feholdexcept
fetestexcept
feupdateenv