Participer au site avec un Tip
Rechercher
 

Améliorations / Corrections

Vous avez des améliorations (ou des corrections) à proposer pour ce document : je vous remerçie par avance de m'en faire part, cela m'aide à améliorer le site.

Emplacement :

Description des améliorations :

Vous êtes un professionnel et vous avez besoin d'une formation ? Programmation avec
Le langage C
Voir le programme détaillé

Fonction fegetexceptflag (C99)

La fonction fegetenv La fonction fegetmode


Entête à inclure

#include <fenv.h>  // <cfenv> en C++

Fonction fegetexceptflag (C99)

int fegetexceptflag( fexcept_t * flagp, int excepts );

Cette fonction sauvegarde une représentation des indicateurs d'exception sélectionnés.

Paramètres

Valeur de retour

La fonction renvoie 0 si la sauvegarde réussit. Elle renvoie une valeur non nulle en cas d'échec.

Exemple de code

Le programme suivant sauvegarde l'état de FE_DIVBYZERO, puis restaure cet état plus loin dans le code.

 1 
 2 
 3 
 4 
 5 
 6 
 7 
 8 
 9 
 10 
 11 
 12 
 13 
 14 
 15 
 16 
 17 
 18 
 19 
#include <fenv.h>
#include <stdio.h>

#pragma STDC FENV_ACCESS ON

int main() {

    fexcept_t flags;

    feraiseexcept( FE_DIVBYZERO );
    fegetexceptflag( &flags, FE_DIVBYZERO );

    feclearexcept( FE_ALL_EXCEPT );
    fesetexceptflag( &flags, FE_DIVBYZERO );

    printf( "FE_DIVBYZERO restauree : %d\n", fetestexcept( FE_DIVBYZERO ) != 0 );

    return 0;
}
Sauvegarder des indicateurs d'exception

Sujets connexes

Exceptions en virgule flottante
fesetexceptflag
fetestexceptflag


La fonction fegetenv La fonction fegetmode




Vous êtes un professionnel et vous avez besoin d'une formation ? Programmation avec
Le langage C
Voir le programme détaillé