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 :

Fonctions trunc, truncf et truncl

Entête à inclure

#include <math.h>  // <cmath> en C++

Fonctions trunc, truncf et truncl

double      trunc( double value );                // C99
float       floorf( float value );                // C99
long double floorl( long double value );          // C99

Ces trois fonctions permettent d'extraire la partie entière d'une valeur flottante. On parle de troncature.

La différence entre ces trois fonctions réside dans le type de données utilisé pour le paramètre et la valeur de retour (double, float ou long double).

Paramètre

Valeur de retour

Renvoie la partie entière de la valeur passé en paramètre.

Exemple de code

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

int main() {

    double value;

    printf( "Veuillez saisir une valeur flottante : " );
    scanf( "%lf", &value );

    printf( "La partie entière vaut : %g\n", trunc( value ) );
    
    return EXIT_SUCCESS;
}
Exemple d'utilisation de la fonction truc

Il est à noter que la librairie mathématique doit être ajoutée durant l'étape de "link" (édition des liens) de votre exécutable. Cela se réalise en ajoutant l'option -lm à votre compilateur gcc. En cas d'utilisation d'un autre compilateur, je vous renvoie vers la documentation de ce dernier.

$>  gcc -o sample sample.c -lm
$>  ./sample
Veuillez saisir une valeur flottante : 3.1415926
La partie entière vaut : 3
$>  ./sample
Veuillez saisir une valeur flottante : -3.1415926
La partie entière vaut : -3
$> 

Sujets connexes

Les fonctions ceil, ceilf et ceill
Les fonctions floor, floorf et floorl
Les fonctions round, roundf et roundl
La fonction trunc en Python