Se recomienda usar Visual Studio 2017

_ecvt

 

Para obtener la documentación más reciente de Visual Studio 2017 RC, consulte Documentación de Visual Studio 2017 RC.

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

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

Parámetros

value
Número que se va a convertir.

count
Número de dígitos almacenados.

dec
Almacena la posición del punto decimal.

sign
Signo de número convertido.

_ecvtDevuelve un puntero a la cadena de dígitos; NULL si se produjo un error.

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

El número total de dígitos devuelto por _ecvt no excederá _CVTBUFSIZE.

Solo los dígitos se almacenan en la cadena. La posición de decimales y el signo de value pueden obtenerse de dec y sign después de la llamada. El dec parámetro señala a un valor entero que proporciona la posición del separador decimal con respecto al principio de la cadena. Un valor entero de 0 o negativo indica que el separador decimal se encuentra a la izquierda del primer dígito. El sign parámetro señala a un entero que indica el signo de número convertido. Si el valor entero es 0, el número es positivo. De lo contrario, el número es negativo.

La diferencia entre _ecvt y _fcvt en la interpretación de la count parámetro. _ecvtinterpreta 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.

_ecvty _fcvt utilizan un único búfer asignado estáticamente 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 de parámetros no válidos, como se describe en validación del parámetro. Si la ejecución puede continuar, errno está establecido en EINVAL y se devuelve NULL.

FunciónEncabezado necesario
_ecvt<stdlib.h>

Para obtener más información sobre compatibilidad, vea Compatibility 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 );  
}  

source: 3.1415926535   buffer: '3141592654'  decimal: 1  sign: 0  

System::Convert::ToString

Conversión de datos
Compatibilidad de punto flotante
atof, _atof_l, _wtof, _wtof_l
_fcvt
_gcvt

Mostrar: