exp, expf, expl
|
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Défini dans l'en-tête
<math.h>
|
||
|
float
expf
(
float
arg
)
;
|
(1) | (depuis C99) |
|
double
exp
(
double
arg
)
;
|
(2) | |
|
long
double
expl
(
long
double
arg
)
;
|
(3) | (depuis C99) |
|
Défini dans l'en-tête
<tgmath.h>
|
||
|
#define exp( arg )
|
(4) | (depuis C99) |
expl
est appelé. Sinon, si
arg
a un type entier ou le type
double
,
exp
est appelé. Sinon,
expf
est appelé. Si
arg
est complexe ou imaginaire, alors la macro appelle la fonction complexe correspondante (
cexpf
,
cexp
,
cexpl
).
Table des matières |
Paramètres
| arg | - | valeur à virgule flottante |
Valeur de retour
Si aucune erreur ne se produit, l'exponentielle de base
e
de
arg
(
e
arg
) est retournée.
Si une erreur de plage se produit en raison d'un dépassement,
+HUGE_VAL
,
+HUGE_VALF
, ou
+HUGE_VALL
est retourné.
Si une erreur de plage se produit en raison d'un dépassement inférieur, le résultat correct (après arrondi) est retourné.
Gestion des erreurs
Les erreurs sont signalées comme spécifié dans
math_errhandling
.
Si l'implémentation prend en charge l'arithmétique à virgule flottante IEEE (IEC 60559),
- Si l'argument est ±0, 1 est retourné
- Si l'argument est -∞, +0 est retourné
- Si l'argument est +∞, +∞ est retourné
- Si l'argument est NaN, NaN est retourné
Notes
Pour le type compatible IEEE double , un dépassement de capacité est garanti si 709.8 < arg , et un sous-dépassement est garanti si arg < -708.4 .
Exemple
#include <errno.h> #include <fenv.h> #include <float.h> #include <math.h> #include <stdio.h> // #pragma STDC FENV_ACCESS ON int main(void) { printf("exp(1) = %f\n", exp(1)); printf("FV of $100, continuously compounded at 3%% for 1 year = %f\n", 100*exp(0.03)); // special values printf("exp(-0) = %f\n", exp(-0.0)); printf("exp(-Inf) = %f\n", exp(-INFINITY)); //error handling errno = 0; feclearexcept(FE_ALL_EXCEPT); printf("exp(710) = %f\n", exp(710)); if (errno == ERANGE) perror(" errno == ERANGE"); if (fetestexcept(FE_OVERFLOW)) puts(" FE_OVERFLOW raised"); }
Sortie possible :
exp(1) = 2.718282
FV of $100, continuously compounded at 3% for 1 year = 103.045453
exp(-0) = 1.000000
exp(-Inf) = 0.000000
exp(710) = inf
errno == ERANGE: Numerical result out of range
FE_OVERFLOW raised
Références
- Norme C23 (ISO/CEI 9899:2024) :
-
- 7.12.6.1 Les fonctions exp (p: TBD)
-
- 7.25 Mathématiques génériques de type <tgmath.h> (p: TBD)
-
- F.10.3.1 Les fonctions exp (p: TBD)
- Norme C17 (ISO/CEI 9899:2018) :
-
- 7.12.6.1 Les fonctions exp (p: 175)
-
- 7.25 Mathématiques génériques de type <tgmath.h> (p: 272-273)
-
- F.10.3.1 Les fonctions exp (p: 379)
- Norme C11 (ISO/IEC 9899:2011):
-
- 7.12.6.1 Les fonctions exp (p: 242)
-
- 7.25 Mathématiques génériques de type <tgmath.h> (p: 373-375)
-
- F.10.3.1 Les fonctions exp (p: 520)
- Norme C99 (ISO/CEI 9899:1999) :
-
- 7.12.6.1 Les fonctions exp (p. 223)
-
- 7.22 Mathématiques génériques de type <tgmath.h> (p. 335-337)
-
- F.9.3.1 Les fonctions exp (p. 458)
- Norme C89/C90 (ISO/IEC 9899:1990) :
-
- 4.5.4.1 La fonction exp
Voir aussi
|
(C99)
(C99)
(C99)
|
calcule
2
élevé à la puissance donnée (
\({\small 2^x}\)
2
x
)
(fonction) |
|
(C99)
(C99)
(C99)
|
calcule
e
élevé à la puissance donnée, moins un (
\({\small e^x-1}\)
e
x
-1
)
(fonction) |
|
(C99)
(C99)
|
calcule le logarithme naturel (base-
e
) (
\({\small \ln{x} }\)
ln(x)
)
(fonction) |
|
(C99)
(C99)
(C99)
|
calcule l'exponentielle complexe base-e
(fonction) |
|
documentation C++
pour
exp
|
|