Exportar (0) Imprimir
Expandir todo
and
div
eof
not
or
xor
Expandir Minimizar
Este artículo proviene de un motor de traducción automática. Mueva el puntero sobre las frases del artículo para ver el texto original. Más información.
Traducción
Original

_ecvt

Convierte un número de double en una cadena. Una versión más segura de esta función está disponible; vea _ecvt_s.

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

value

Número que se va a convertir.

count

Número de dígitos almacenados.

dec

Posición de separador decimal almacenada.

sign

Signo de número convertido.

_ecvt devuelve un puntero a la cadena de dígitos; NULL si se ha producido un error.

La función de _ecvt convierte un número en punto flotante a una cadena de caracteres. El parámetro de value es el número de punto flotante que se va a convertir. Esta función almacena hasta count dígitos de value como cadena y anexa un carácter null (“\0”). Si el número de dígitos en value supera count, se redondea el dígito de orden inferior. Si hay menos que los dígitos de count , la cadena se rellena con ceros.

El número total de dígitos devueltos por _ecvt no superará _CVTBUFSIZE.

Sólo dígitos se almacenan en la cadena. La posición del separador decimal y el signo de value se pueden obtener de dec y de sign después de la llamada. Los puntos del parámetro de dec a un valor entero que indica la posición del separador decimal con respecto al principio de la cadena. Un 0 o un valor entero negativo indica que el separador decimal se encuentra a la izquierda del primer dígito. Los puntos del parámetro de sign a un entero que indica el signo de número convertido. Si el valor entero es 0, el número es positivo. Si no, el número es negativo.

La diferencia entre _ecvt y _fcvt está en la del parámetro de count . _ecvt interpreta count como el número total de dígitos en la cadena de salida, mientras que _fcvt interpreta count como el número de dígitos después del separador decimal.

_ecvt y _fcvt utilizan un único búfer estáticamente asignado para la conversión. Cada llamada a una de estas rutinas destruye el resultado de la llamada anterior.

Esta función valida sus parámetros. Si dec o sign es NULL, o count es 0, se invoca el controlador no válido de parámetro, tal y como se describe en Validación de parámetros. Si la ejecución puede continuar, errno se establece en EINVAL y se devuelve NULL.

Función

Encabezado necesario

_ecvt

<stdlib.h>

Para obtener más información de compatibilidad, vea Compatibilidad en la Introducción.

// 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 );
}
origen: búfer 3,1415926535: “3141592654 " decimal: 1 firmados: 0

Adiciones de comunidad

AGREGAR
Mostrar:
© 2014 Microsoft