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 fesetexcept (C23)

La fonction fesetenv La fonction fesetexceptflag


Entête à inclure

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

Fonction fesetexcept (C23)

int fesetexcept( int excepts );

Cette fonction positionne les indicateurs d'exception indiqués, sans nécessairement déclencher les effets associés à une vraie levée d'exception.

Paramètres

Valeur de retour

La fonction renvoie 0 si les indicateurs demandés ont été positionnés. Elle renvoie une valeur non nulle en cas d'échec.

Exemple de code

Le programme suivant utilise la fonction C23 si elle est disponible, puis vérifie l'état de FE_INVALID.

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

#pragma STDC FENV_ACCESS ON

int main() {

#ifdef __STDC_VERSION_FENV_H__
    feclearexcept( FE_ALL_EXCEPT );
    fesetexcept( FE_INVALID );
    printf( "FE_INVALID positionnee : %d\n", fetestexcept( FE_INVALID ) != 0 );
#else
    puts( "fesetexcept non disponible avant C23." );
#endif

    return 0;
}
Positionner un indicateur d'exception

Sujets connexes

Exceptions en virgule flottante
feraiseexcept
fetestexcept


La fonction fesetenv La fonction fesetexceptflag




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