_ecvt

Converte un oggetto double numero in una stringa.Una versione più sicura di questa funzione è disponibile; vedere _ecvt_s.

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

Parametri

  • value
    Numero da convertire.

  • count
    Numero di cifre archiviate.

  • dec
    Posizione del separatore decimale archiviata.

  • sign
    Segno del numero convertito.

Valore restituito

_ecvt restituisce un puntatore alla stringa di cifre; NULL se si è verificato un errore.

Note

_ecvt la funzione consente di convertire un numero a virgola mobile in una stringa di caratteri.value il parametro è il numero a virgola mobile da convertire.Questa funzione contiene fino a count cifre di value come stringa e viene aggiunto un carattere null (" \ 0 ").Se il numero di cifre in value percorso count, la cifra meno significativa viene arrotondata.Se vi sono meno che count le cifre, la stringa viene applicato il riempiti con zeri.

Il numero totale di cifre restituiti da _ecvt non eccederà _CVTBUFSIZE.

Solo cifre vengono archiviate nella stringa.La posizione del separatore decimale e il segno di value può essere ottenuto da dec e sign dopo la chiamata.dec punti di parametro su un valore intero che rappresenta la posizione del separatore decimale in relazione all'inizio della stringa.Un 0 o un valore Integer negativo indica che il separatore decimale si trova a sinistra della prima cifra.sign punti di parametro su un intero che indica il segno del numero convertito.se il valore Integer è 0, il numero è positivo.In caso contrario, il numero è negativo.

La differenza tra _ecvt e _fcvt è nell'interpretazione di count parametro._ecvt interpreta count come numero totale di cifre nella stringa di output, mentre _fcvt interpreta count come numero di cifre dopo il separatore decimale.

_ecvt e _fcvt utilizzare un solo buffer statico allocato per la conversione.Ogni chiamata a una di queste routine elimina il risultato della chiamata precedente.

Questa funzione convalida dei parametri.se dec o sign è NULL, o count è 0, il gestore non valido di parametro viene richiamato, come descritto in Convalida dei parametri.Se l'esecuzione è consentita per continuare, errno è impostato su EINVAL e viene restituito NULL.

Requisiti

Funzione

Intestazione di associazione

_ecvt

<definito>

Per ulteriori informazioni sulla compatibilità, vedere compatibilità nell'introduzione.

Esempio

// 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 );
}
  

Equivalente .NET Framework

System:: Conversione:: ToString

Vedere anche

Riferimenti

Conversione di dati

Supporto per le operazioni in virgola mobile

atof, _atof_l, _wtof, _wtof_l

_fcvt

_gcvt