ecvt(3)

NOM
ecvt, fcvt - Convertir des nombres réels en chaînes de caractères

BIBLIOTHÈQUE
Bibliothèque C standard (libc, -lc)

SYNOPSIS
#include <stdlib.h>

[[obsolète]] char *ecvt(double number, int ndigits,
                          int *restrict decpt, int *restrict sign);
[[obsolète]] char *fcvt(double number, int ndigits,
                          int *restrict decpt, int *restrict sign);

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

ecvt(), fcvt() :
    Depuis la glibc 2.17
        (_XOPEN_SOURCE >= 500 && ! (_POSIX_C_SOURCE >= 200809L))
            || /* glibc >= 2.20 */ _DEFAULT_SOURCE
            || /* glibc <= 2.19 */ _SVID_SOURCE
    glibc 2.12 à 2.16 :
        (_XOPEN_SOURCE >= 500 && ! (_POSIX_C_SOURCE >= 200112L))
            || _SVID_SOURCE
    Avant la glibc 2.12 :
        _SVID_SOURCE || _XOPEN_SOURCE >= 500

DESCRIPTION
La fonction ecvt() convertit number en une chaîne de caractères terminée par un caractère nul, de ndigits chiffres (ndigits étant limité par une valeur spécifique au système, déterminée par la précision d'un double). La fonction renvoie un pointeur sur cette chaîne. Le chiffre d'ordre le plus élevé est non nul, sauf si number vaut zéro. Le chiffre d'ordre le plus faible est arrondi. La chaîne elle-même ne contient pas de point décimal, néanmoins la position du point décimal relativement au début de la chaîne est stockée dans *decpt. Une valeur négative de *decpt signifie que le point décimal est à gauche du début de la chaîne. Si le signe de number est négatif, *sign est défini avec une valeur non nulle, sinon il est mis à 0. Si number est nul, il n'est pas précisé si *decpt vaut zéro ou un.

La fonction fcvt() est identique à ecvt(), à la différence que ndigits indique le nombre de décimales après la virgule.

VALEUR RENVOYÉE
Les deux fonctions ecvt() et fcvt() renvoient un pointeur sur une chaîne de caractères statique contenant la représentation ASCII de number. La chaîne statique est écrasée à chaque appel de ecvt() ou fcvt().

ATTRIBUTS
Pour une explication des termes utilisés dans cette section, consulter attributes(7).
Interface | Attribut | Valeur
ecvt() | Sécurité des threads | MT-Unsafe race:ecvt
fcvt() | Sécurité des threads | MT-Unsafe race:fcvt

STANDARDS
None.

HISTORIQUE
SVr2, marqué comme « LEGACY » dans POSIX.1-2001. POSIX.1-2008 supprime les spécifications de ecvt() et fcvt() et recommande à la place l'utilisation de sprintf(3) (bien que snprintf(3) soit préférable).

NOTES
Certaines localisations n'utilisent pas le point comme séparateur décimal.

VOIR AUSSI
ecvt_r(3), gcvt(3), qecvt(3), setlocale(3), sprintf(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> et David Prévot <david@tilapin.org>

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.