expm1(3)

NOM
expm1, expm1f, expm1l - Exponentielle moins 1

BIBLIOTHÈQUE
Bibliothèque de math (libm, -lm)

SYNOPSIS
#include <math.h>

double expm1(double x);
float expm1f(float x);
long double expm1l(long double x);

    Exigences de macros de test de fonctionnalités pour la glibc (consulter feature_test_macros(7)) :

expm1() :
    _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L
        || _XOPEN_SOURCE >= 500
        || /* Depuis la glibc 2.19 : */ _DEFAULT_SOURCE
        || /* glibc <= 2.19 : */ _BSD_SOURCE || _SVID_SOURCE

expm1f(), expm1l() :
    _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L
        || /* Depuis la glibc 2.19 : */ _DEFAULT_SOURCE
        || /* glibc <= 2.19 : */ _BSD_SOURCE || _SVID_SOURCE

DESCRIPTION
Ces fonctions renvoient une valeur équivalente à

    exp(x) - 1

Le résultat est calculé d’une manière précise même lorsque x est proche de zéro, alors que exp(x) - 1 serait imprécis à cause de la soustraction de deux nombres quasiment égaux.

VALEUR RENVOYÉE
En cas de réussite, ces fonctions renvoient exp(x) - 1.

Si x n’est pas un nombre, un NaN est renvoyé.

Si x est +0 (-0), +0 (-0) est renvoyé.

Si x est l'infini positif, l'infini positif est renvoyé.

Si x est l’infini négatif, -1 est renvoyé.

En cas de dépassement par le haut, une erreur d'intervalle se produit et les fonctions renvoient -HUGE_VAL, -HUGE_VALF ou -HUGE_VALL, respectivement.

ERREURS
Voir math_error(7) pour savoir comment déterminer si une erreur s'est produite lors de l'appel d'une de ces fonctions.

Les erreurs suivantes peuvent se produire :

Erreur d'intervalle, dépassement par le haut
    errno est définie à ERANGE (mais consultez la section des BOGUES). Une exception de dépassement par le haut en virgule flottante (FE_OVERFLOW) est levée.

ATTRIBUTS
Pour une explication des termes utilisés dans cette section, consulter attributes(7).
Interface | Attribut | Valeur
expm1(), expm1f(), expm1l() | Sécurité des threads | MT-Safe

STANDARDS
C11, POSIX.1-2008.

HISTORIQUE
C99, POSIX.1-2001, BSD.

BOGUES
Avant la glibc 2.17 de la et sur certaines architectures (par exemple, x86 mais pas x86_64) expm1() lève à tort une exception de dépassement par le bas de nombre flottant pour de grandes valeurs négatives de x (où le résultat de la fonction approche -1).

Avant approximativement la glibc 2.11, expm1() lève à tort une exception de virgule flottante incorrecte en plus de l'exception de dépassement et renvoie un NaN au lieu de l’infini positif, pour certaines grandes valeurs positives de x.

Avant la glibc 2.11, l'implémentation de la glibc ne définit pas errno à ERANGE lorsqu'une erreur d'intervalle se produit.

VOIR AUSSI
exp(3), log(3), log1p(3)

TRADUCTION
La traduction française de cette page de manuel a été créée par Christophe Blaess <https://www.blaess.fr/christophe/>, Stéphan Rafin <stephan.rafin@laposte.net>, Thierry Vignaud <tvignaud@mandriva.com>, François Micaux, Alain Portal <aportal@univ-montp2.fr>, Jean-Philippe Guérard <fevrier@tigreraye.org>, Jean-Luc Coulon (f5ibh) <jean-luc.coulon@wanadoo.fr>, Julien Cristau <jcristau@debian.org>, Thomas Huriaux <thomas.huriaux@gmail.com>, Nicolas François <nicolas.francois@centraliens.net>, Florentin Duneau <fduneau@gmail.com>, Simon Paillard <simon.paillard@resel.enst-bretagne.fr>, Denis Barbier <barbier@debian.org>, David Prévot <david@tilapin.org>, Cédric Boutillier <cedric.boutillier@gmail.com> et Grégoire Scano <gregoire.scano@malloc.fr>

Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License version 3 (https://www.gnu.org/licenses/gpl-3.0.html) concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.

Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à debian-l10n-french@lists.debian.org.