ecvt_r, fcvt_r, qecvt_r, qfcvt_r - convert a floating-point number to a string
#include <stdlib.h>
int ecvt_r(double number, int ndigits, int *decpt,
int *sign, char *buf, size_t len);
int fcvt_r(double number, int ndigits, int *decpt,
int *sign, char *buf, size_t len);
int qecvt_r(long double number, int ndigits, int *decpt,
int *sign, char *buf, size_t len);
int qfcvt_r(long double number, int ndigits, int *decpt,
int *sign, char *buf, size_t len);
Feature Test Macro Requirements for glibc (see feature_test_macros(7)):
ecvt_r(), fcvt_r(), qecvt_r(), qfcvt_r():
/* Glibc since 2.19: */ _DEFAULT_SOURCE || /* Glibc versions <= 2.19: */ _SVID_SOURCE || _BSD_SOURCE
The functions ecvt_r(), fcvt_r(), qecvt_r(), and qfcvt_r() are identical to ecvt(3), fcvt(3), qecvt(3), and qfcvt(3), respectively, except that they do not return their result in a static buffer, but instead use the supplied buf of size len. See ecvt(3) and qecvt(3).
These functions return 0 on success, and -1 otherwise.
For an explanation of the terms used in this section, see attributes(7).
Interface | Attribute | Value |
ecvt_r(), fcvt_r(), qecvt_r(), qfcvt_r() |
Thread safety | MT-Safe |
These functions are GNU extensions.
These functions are obsolete. Instead, sprintf(3) is recommended.
ecvt(3), qecvt(3), sprintf(3)
This page is part of release 5.10 of the Linux man-pages project. A description of the project, information about reporting bugs, and the latest version of this page, can be found at https://www.kernel.org/doc/man-pages/.