strfromf, strfromd, strfromld
Определено в заголовочном файле <stdlib.h> |
||
|---|---|---|
int strfromf( char *restrict s, size_t n, const char *restrict format, float fp ); |
(с C23) | |
int strfromd( char *restrict s, size_t n, const char *restrict format, double fp ); |
(с C23) | |
int strfroml( char *restrict s, size_t n, const char *restrict format, long double fp ); |
(с C23) |
Преобразует значение с плавающей точкой в строку байтов.
Функции эквивалентны snprintf(s, n, format, fp), за исключением того, что строка формата должна содержать только символ %, необязательную точность, не содержащую звездочку *, и один из спецификаторов преобразования a, A, e, E, f, F, g, или G, который применяется к типу double, float, или long double) указанному суффиксом функции (а не модификатором длины). Использование этих функций с любой другой строкой формата приводит к неопределенному поведению.
Параметры
| s | - | указатель на строку символов, в которую следует записать данные |
| n | - | максимальное количество символов, которое может быть записано (включая завершающий нуль) |
| format | - | указатель на завершаемую нулем строку байтов, определяющую способ интерпретации данных |
| fp | - | значение с плавающей точкой для преобразования |
Возвращаемое значение
Количество символов, которое было бы записано, если бы n была достаточно большой, не считая завершающего нулевого символа. Таким образом, завершаемая нулем строка вывода была полностью записана тогда и только тогда, когда возвращаемое значение является неотрицательным и меньше n.
Пример
Справочная информация
- Стандарт C23 (ISO/IEC 9899:2023):
- 7.24.1.3 Функции strfromd, strfromf и strfroml
См. также
|
(C99)(C11)(C11)(C11)(C11) |
выводит отформатированный вывод в stdout, потоке файла или буфере (функция) |
|
(C99)(C99) |
преобразует строку байтов в значение с плавающей точкой (функция) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/c/string/byte/strfromf