fcvt

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu stdlib.h - Index


Header-Datei

stdlib.h

Kategorie

Konvertierungsroutinen, mathematische Routinen

Prototyp

char *fcvt(double value, int ndig, int *dec, int *sign);

Beschreibung

Konvertiert einen Gleitkommawert in einen String.

fcvt konvertiert den Wert value beginnend mit der am weitesten links stehenden signifikanten Ziffer in einen nullterminierten String mit ndig Ziffern rechts vom Dezimalzeichen. fcvt gibt dann einen Zeiger auf diesen String zurück. Die Position des Dezimalzeichens bezogen auf den String-Anfang wird indirekt durch dec angegeben (ein negativer Wert für dec gibt an, dass das Dezimalzeichen links von den zurückgegebenen Ziffern steht). Der String enthält selbst kein Dezimalzeichen. Ist value ein negativer Wert, hat das word, auf das sign zeigt, einen Wert ungleich Null, andernfalls den Wert 0.

Der Wert, der durch die rechts vom Dezimalzeichen stehenden Ziffern ausgedrückt wird, ist ein gerundeter Wert.

Rückgabewert

Der Rückgabewert von fcvt zeigt auf statische Daten, deren Inhalt mit jedem Aufruf von ecvt und fcvt überschrieben wird.

Beispiel



 #include <stdlib.h>
 #include <stdio.h>
 int main(void)
 {
   char *str;
   double num;
   int dec, sign, ndig = 5;
   /* Eine normale Gleitkommazahl */
   num = 9.876;
   str = fcvt(num, ndig, &dec, &sign);
   printf("string = %10s decimal place = %d sign = %d\n", str, dec, sign);
   /* Eine negative Gleitkommazahl */
   num = -123.45;
   str = fcvt(num, ndig, &dec, &sign);
   printf("string = %10s decimal place = %d sign = %d\n", str, dec, sign);
   /* Wissenschaftliche Notation */
   num = 0.678e5;
   str = fcvt(num, ndig, &dec, &sign);
   printf("string = %10s decimal place = %d sign = %d\n", str, dec, sign);
   return 0;
 }



Portabilität



POSIX Win32 ANSI C ANSI C++

+