Definition | #include <stdlib.h> char *fcvt(double wert, int anz, int *dez_pkt, int *vorzeichen);
Die Zeichenkette beginnt mit der ersten Ziffer ungleich 0 aus dem umzuwandelnden Gleitkommawert und enthält anz Stellen nach dem Dezimalpunkt. Dezimalpunkt und ein ggf. negatives Vorzeichen sind nicht Bestandteil der Zeichenkette. |
Parameter | double wert Gleitkommawert, der für die Ausgabe aufbereitet werden soll. int anz Anzahl der Ziffern nach dem Dezimalpunkt. int *dez_pkt Zeiger auf eine ganze Zahl, die die Position des Dezimalpunktes in der Ergebniszeichenkette angibt. int *vorzeichen Zeiger auf eine ganze Zahl, die das Vorzeichen der Ergebniszeichenkette angibt. |
Returnwert | Zeiger auf die umgewandelte Zeichenkette bei Erfolg. |
Hinweise | Falsche Parameter, etwa ein Beachten Sie, dass die Argumente dez_pkt und vorzeichen Zeiger sein müssen!
|
Beispiel | Folgendes Programm liest einen Gleitkommawert x ein, wandelt ihn nach der Angabe in n gemäß dem FORTRAN F-Format um und gibt ihn als Zeichenkette wieder aus. Zusätzlich werden das berechnete Vorzeichen sign und die Position des Dezimalpunktes dec_p ausgegeben. #include <stdio.h> #include <stdlib.h> int main(void) { double x; int n, dec_p, sign; printf("Bitte Gleitkommazahl eingeben: \n"); if (scanf("%lf", &x) == 1) { printf("Wieviel signifikante Stellen : \n"); if (scanf("%d", &n) == 1) { printf("Die Zahl lautet umgewandelt : %s \n", fcvt(x, n, &dec_p, &sign)); printf("Das Vorzeichen ist %s \n", (sign == 0 ? "positiv" : "negativ")); printf("Position des Dezimalpunktes: %d \n", dec_p); } } return 0; } |
Siehe auch
ecvt, gcvt