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)