_ecvt
Преобразование a double номер строки.Более безопасную версию этой функции доступен; см. _ecvt_s.
char *_ecvt(
double value,
int count,
int *dec,
int *sign
);
Параметры
value
Число для преобразования.count
Количество цифр, которые хранятся.dec
Магазины позиция десятичной запятой.sign
Символ преобразованного числа.
Возвращаемое значение
_ecvt возвращает указатель на строку знаков; Значение null, если произошла ошибка.
Заметки
_ecvt функция преобразует число с плавающей запятой в командную строку.value параметр число с плавающей запятой, которые требуется преобразовать.Эта функция хранит значение count числа value как строка и добавления нуль-символ (" \ 0 ").Если количество знаков в пределах value превышает count- младший число округляется.Если меньше count числа, строки заполняются нулями.
Общее число цифр, возвращаемых by _ecvt не превысит _CVTBUFSIZE.
Только числа хранятся в строке.Позиция десятичной запятой, а символ value может быть получен из dec и sign после вызова.dec указатель на значение параметра, задающего десятичной запятой целого числа позицию относительно начала строки.0 Или отрицательное целое значение указывает на то, что десятичная запятая, расположенную слева от первого числа.sign элементы параметра в целое число, указывающее знак преобразованного числа.Если целое значение 0, то число является положительным.В противном случае - число является отрицательным.
Различие _ecvt и _fcvt в толковании count параметр._ecvt интерпретирует count так как общее количество цифр в выходной строке, тогда как _fcvt интерпретирует count как число знаков после десятичной запятой.
_ecvt и _fcvt использование одного статически выделенный буфер для преобразования.Каждый вызов к одной из этих подпрограмм уничтожает результат предыдущего вызова.
Эта функция проверяет его параметры.If dec OR sign значение null или count 0 - недопустимый параметр вызывается обработчик, как описано в разделе Проверка параметров.Если выполнение может продолжить, errno равно EINVAL и возвращается значение NULL.
Требования
Функция |
Обязательный заголовок |
---|---|
_ecvt |
<stdlib.h> |
Дополнительные сведения о совместимости см. Совместимость во введении.
Пример
// crt_ecvt.c
// compile with: /W3
// This program uses _ecvt to convert a
// floating-point number to a character string.
#include <stdlib.h>
#include <stdio.h>
int main( void )
{
int decimal, sign;
char *buffer;
int precision = 10;
double source = 3.1415926535;
buffer = _ecvt( source, precision, &decimal, &sign ); // C4996
// Note: _ecvt is deprecated; consider using _ecvt_s instead
printf( "source: %2.10f buffer: '%s' decimal: %d sign: %d\n",
source, buffer, decimal, sign );
}
Эквивалент в .NET Framework
System:: Преобразование:: ToString