#include <math.h> // <cmath> en C++
double powr( double x, double y ); // C23
float powrf( float x, float y ); // C23
long double powrl( long double x, long double y ); // C23
Ces trois fonctions élèvent x à la puissance y en suivant la définition exp(y * log(x)).
Ces éléments ont été ajoutés par la version C23 du standard du langage C.
Ces fonctions renvoient x^y, avec un domaine plus strict que pow pour mieux suivre cette définition continue.
L'exemple suivant montre une utilisation simple de ces fonctions.
1 2 3 4 5 6 7 8 |
#include <math.h> #include <stdio.h> #include <stdlib.h> int main() { printf( "powr(2.0, 3.0) == %g\n", powr(2.0, 3.0) ); 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 powr(2.0, 3.0) == 8 $>
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 :