44 int const requested_digits,
45 int*
const decimal_point,
47 __crt_cached_ptd_host&
ptd
54 size_t const minimum_buffer_count =
static_cast<size_t>((requested_digits > 0 ? requested_digits : 0) + 2);
58 int const capped_digits =
min(requested_digits,
static_cast<int>(
buffer_count - 2));
64 return ptd.get_errno().set(
e);
67 *
sign = strflt->sign ==
'-' ? 1 : 0;
68 *decimal_point = strflt->decpt;
90 int const requested_digits,
91 int*
const decimal_point,
93 __crt_cached_ptd_host&
ptd
113 int const actual_digits = strflt.decpt + requested_digits;
115 bool const buffer_insufficiently_large =
116 requested_digits > 0 && strflt.decpt > 0 &&
117 actual_digits < requested_digits;
119 int const capped_digits = buffer_insufficiently_large ?
INT_MAX : actual_digits;
128 int const requested_digits,
129 int*
const decimal_point,
133 __crt_cached_ptd_host
ptd;
139 int const requested_digits,
140 int*
const decimal_point,
142 __crt_cached_ptd_host&
ptd
166 int const capped_digits =
min(requested_digits,
_CVTBUFSIZE - 2 - strflt.decpt);
179 int const requested_digits,
180 int*
const decimal_point,
184 __crt_cached_ptd_host
ptd;
205 int const requested_digits,
206 int*
const decimal_point,
208 __crt_cached_ptd_host&
ptd
234 int const capped_digits =
min(requested_digits,
static_cast<int>(
buffer_count - 2));
237 if (capped_digits >= 0 &&
buffer[capped_digits])
239 buffer[capped_digits] =
'\0';
249 int const requested_digits,
250 int*
const decimal_point,
254 __crt_cached_ptd_host
ptd;
260 int const requested_digits,
261 int*
const decimal_point,
263 __crt_cached_ptd_host&
ptd
289 int const requested_digits,
290 int*
const decimal_point,
294 __crt_cached_ptd_host
ptd;
errno_t __cdecl __acrt_fp_strflt_to_string(char *const buffer, size_t const buffer_count, int digits, STRFLT const pflt, __acrt_has_trailing_digits const trailing_digits, __acrt_rounding_mode const rounding_mode, __crt_cached_ptd_host &ptd)
__acrt_has_trailing_digits __cdecl __acrt_fltout(_CRT_DOUBLE value, unsigned const precision, __acrt_precision_style const precision_style, STRFLT const flt, char *const result, size_t const result_count)
#define _UCRT_VALIDATE_RETURN_ERRCODE(ptd, expr, errorcode)
#define _RESET_STRING(_String, _Size)
_In_ size_t const _In_ int _In_ bool const _In_ unsigned const _In_ __acrt_rounding_mode const _Inout_ __crt_cached_ptd_host & ptd
static char *__cdecl _fcvt_internal(double const value, int const requested_digits, int *const decimal_point, int *const sign, __crt_cached_ptd_host &ptd)
char *__cdecl _fcvt(double const value, int const requested_digits, int *const decimal_point, int *const sign)
static char *__cdecl try_get_ptd_buffer(__crt_cached_ptd_host &ptd)
static char *__cdecl _ecvt_internal(double const value, int const requested_digits, int *const decimal_point, int *const sign, __crt_cached_ptd_host &ptd)
static errno_t __cdecl internal_to_string(_Out_writes_z_(buffer_count) char *const buffer, size_t const buffer_count, STRFLT const strflt, int const requested_digits, int *const decimal_point, int *const sign, __crt_cached_ptd_host &ptd)
errno_t __cdecl _ecvt_s(char *const buffer, size_t const buffer_count, double const value, int const requested_digits, int *const decimal_point, int *const sign)
static errno_t __cdecl _fcvt_s_internal(char *const buffer, size_t const buffer_count, double const value, int const requested_digits, int *const decimal_point, int *const sign, __crt_cached_ptd_host &ptd)
errno_t __cdecl _fcvt_s(char *const buffer, size_t const buffer_count, double const value, int const requested_digits, int *const decimal_point, int *const sign)
char *__cdecl _ecvt(double const value, int const requested_digits, int *const decimal_point, int *const sign)
static errno_t __cdecl _ecvt_s_internal(char *const buffer, size_t const buffer_count, double const value, int const requested_digits, int *const decimal_point, int *const sign, __crt_cached_ptd_host &ptd)
#define _Out_writes_z_(s)
size_t const buffer_count