Freigeben über


_fcvt

Konvertiert eine Gleitkommazahl in eine Zeichenfolge.Eine sicherere Version dieser Funktion ist verfügbar. Weitere Informationen finden Sie unter _fcvt_s.

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

Parameter

  • value
    Der zu konvertierende Zahl.

  • count
    Anzahl der Ziffern nach dem Dezimalkomma.

  • dec
    Zeiger auf die gespeicherten Kommastellung.

  • sign
    Zeiger auf den Indikator gespeicherten Zeichen.

Rückgabewert

_fcvt gibt einen Zeiger auf die Zeichenfolge von Ziffern, NULL bei einem Fehler zurück.

Hinweise

Die _fcvt-Funktion konvertiert eine Gleitkommazahl auf eine auf NULL endende Zeichenfolge.Der Parameter ist value die zu konvertierende Gleitkommazahl._fcvt speichert die Ziffern von value als Zeichenfolge und fügt ein NULL-Zeichen („\ 0 ").Der count-Parameter gibt die Anzahl der nach dem Dezimalkomma an Ziffern gespeichert werden soll.Überschüssige Ziffern gerundet werden count Stellen zu deaktivieren.Wenn weniger Ziffern als count der Genauigkeit vorhanden ist, wird die Zeichenfolge mit Nullen aufgefüllt.

Die Gesamtanzahl der Ziffern, die durch _fcvt zurückgegebenen _CVTBUFSIZEnicht überschreitet.

Nur Ziffern sind in der Zeichenfolge gespeichert.Die Position des Dezimaltrennzeichens und das Zeichen aus value können von dec und dem Zeichen nach dem Aufruf abgerufen werden.Der dec-Parameter zeigt auf einen ganzzahligen Wert. dieser ganzzahlige Wert gibt die Position des Dezimaltrennzeichens in Bezug auf den Anfang der Zeichenfolge.Ein null oder negativer ganzzahliger Wert gibt an, dass das Dezimaltrennzeichen links vom ersten Stelle befindet.Der Parameter sign zeigt auf eine ganze Zahl, die das Vorzeichen von valueangibt.Die ganze Zahl wird auf 0 festgelegt, wenn value positiv ist, und wird in eine Zahl ungleich 0 (null) festgelegt, wenn value negativ ist.

Der Unterschied zwischen _ecvt und _fcvt ist in der Interpretation des count-Parameters._ecvt interpretiert count während die Gesamtanzahl der Ziffern in der Ausgabezeichenfolge, während _fcvtcount als die Anzahl der Stellen nach dem Dezimalkomma interpretiert.

_ecvt und _fcvt verwenden einen einzelnen statisch verknüpften Puffer für die Konvertierung.Jeder Aufruf von einer der folgenden Routinen zerstört das Ergebnis des vorherigen Aufrufs.

Diese Funktion überprüft seine Parameter.Wenn dec oder sign NULL ist oder count 0 ist, wird der Ereignishandler aufgerufen, z. B. ungültige Parameter in Parametervalidierungbeschrieben.Wenn die Ausführung zulässig ist, um fortzufahren, wird errno zu EINVAL festgelegt und NULL zurückgegeben.

Anforderungen

Funktion

Erforderlicher Header

_fcvt

<stdlib.h>

Weitere Informationen finden Sie unter Kompatibilität Kompatibilität in der Einführung.

Beispiel

// 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-Entsprechung

System::Convert::ToString

Siehe auch

Referenz

Datenkonvertierung

Gleitkommaunterstützung

atof, _atof_l, _wtof, _wtof_l

_ecvt

_gcvt