rapidyaml 0.14.0
parse and emit YAML, and do it fast
Loading...
Searching...
No Matches
dtoa: float64 to chars

Functions

size_t c4::dtoa (substr str, double v, int precision=-1, RealFormat_e formatting=FTOA_FLEX) noexcept
 Convert a double-precision real number to string.

Detailed Description

Function Documentation

◆ dtoa()

size_t c4::dtoa ( substr str,
double v,
int precision = -1,
RealFormat_e formatting = FTOA_FLEX )
inlinenoexcept

Convert a double-precision real number to string.

The string will in general be NOT null-terminated. For FTOA_FLEX, precision is the number of significand digits. Otherwise precision is the number of decimals. It is safe to call this function with an empty or too-small buffer.

Returns
the size of the buffer needed to write the number

Definition at line 2096 of file charconv.hpp.

2097{
2098#if C4CORE_HAVE_STD_TOCHARS
2099 return detail::rtoa(str, v, precision, formatting);
2100#else
2101 char fmt[16];
2102 detail::get_real_format_str(fmt, precision, formatting, /*length_modifier*/"l");
2103 return detail::print_one(str, fmt, v);
2104#endif
2105}