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 :

Macro M_PI

Entête à inclure

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

Macro M_PI (Non Standard)

#define M_PI       3.14159265358979323846

Cette macro définie la valeur, de type double, de la constante π.

cette macro n'est pas définie dans la norme ISO du langage C. Pour autant, de nombreux compilateurs la propose et notamment « gcc ».
Avec Visual Studio et le compilateur Microsoft, il est nécessaire de définir la macro suivante : #define _USE_MATH_DEFINES.

Exemple de code

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

int main() {

    printf( "cos(%lf) == %lf\n", M_PI, cos( M_PI ) );
    printf( "sin(%lf) == %lf\n", M_PI, sin( M_PI ) );
    printf( "tan(%lf) == %lf\n", M_PI, tan( M_PI ) );
    
    return EXIT_SUCCESS;
}

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
cos(3.141593) == -1.000000
sin(3.141593) == 0.000000
tan(3.141593) == -0.000000
$> 

Sujets connexes

Les fonctions acos, acosf et acosl
Les fonctions asin, asinf et asinl
Les fonctions atan, atanf et atanl
Les fonctions atan2, atan2f et atan2l
Les fonctions cos, cosf et cosl
Les fonctions sin, sinf et sinl
Les fonctions tan, tanf et tanl