Поделиться через


_fcvt

Преобразует число с плавающей запятой в строке.Более безопасную версию этой функции доступен; см. _fcvt_s.

char *_fcvt( 
   double value,
   int count,
   int *dec,
   int *sign 
);

Параметры

  • value
    Число для преобразования.

  • count
    Количество цифр после десятичного знака.

  • dec
    Указатель к хранимому позиции десятичной запятой.

  • sign
    Указатель к хранимому индикатору знака.

Возвращаемое значение

_fcvt возвращает указатель на строку знаков, значение NULL при ошибке.

Заметки

_fcvt функция преобразует число с плавающей запятой в null-завершенной символьную строку.value параметр число с плавающей запятой, которые требуется преобразовать._fcvt хранит числа value как строка и добавления нуль-символ (" \ 0 ").count параметр определяет количество разрядов, которое будет храниться после десятичной запятой.Лишние цифры округляются до count размещения.Если меньше count цифры точности, строка заполняются нулями.

Общее число цифр, возвращаемых by _fcvt не превысит _CVTBUFSIZE.

Только числа хранятся в строке.Позиция десятичной запятой, а символ value может быть получен из dec и после вызова.dec элементы параметра в значение целого числа. это целое значение дает положение десятичной запятой относительно начала строки.Нулевое или отрицательное целое значение указывает на то, что десятичная запятая, расположенную слева от первого числа.Параметр sign указывает на целое число, указывающее знак value.Целое число имеет значение 0, если value положительное число, если и установлено в ненулевое значение value отрицательные значения.

Различие _ecvt и _fcvt в толковании count параметр._ecvt интерпретирует count так как общее количество цифр в выходной строке, тогда как _fcvt интерпретирует count как число знаков после десятичной запятой.

_ecvt и _fcvt использование одного статически выделенный буфер для преобразования.Каждый вызов к одной из этих подпрограмм уничтожает результаты предыдущего вызова.

Эта функция проверяет его параметры.If dec OR sign значение null или count 0 - недопустимый параметр вызывается обработчик, как описано в разделе Проверка параметров.Если выполнение может продолжить, errno равно EINVAL и возвращается значение NULL.

Требования

Функция

Обязательный заголовок

_fcvt

<stdlib.h>

Дополнительные сведения о совместимости см. Совместимость во введении.

Пример

// crt_fcvt.c
// compile with: /W3
// This program converts the constant
// 3.1415926535 to a string and sets the pointer
// buffer to point to that string.

#include <stdlib.h>
#include <stdio.h>

int main( void )
{
   int  decimal, sign;
   char *buffer;
   double source = 3.1415926535;

   buffer = _fcvt( source, 7, &decimal, &sign ); // C4996
   // Note: _fcvt is deprecated; consider using _fcvt_s instead
   printf( "source: %2.10f   buffer: '%s'   decimal: %d   sign: %d\n",
            source, buffer, decimal, sign );
}
  

Эквивалент в .NET Framework

System:: Преобразование:: ToString

См. также

Ссылки

Преобразование данных

Поддержка чисел с плавающей запятой

atof, _atof_l, _wtof, _wtof_l

_ecvt

_gcvt