Definition | #include <stdio.h> int fprintf(FILE *dz, const char *format, argumentenliste);
| |
Parameter | FILE *dz Dateizeiger der Ausgabedatei. const char *format Formatzeichenkette wie bei argumentenliste Variablen oder Konstanten, deren Werte gemäß den Angaben in den Formatanweisungen für die Ausgabe umgewandelt und formatiert werden sollen. Wenn die Anzahl der Formatanweisungen nicht mit der Anzahl der Argumente übereinstimmt, gilt Folgendes: Gibt es mehr Argumente, werden die überzähligen ignoriert. Gibt es weniger Argumente, führt dies zu undefinierten Ergebnissen. | |
Returnwert | Anzahl der ausgegebenen Zeichen bei Erfolg. | |
negativer Wert bei Fehler. | ||
Hinweise | Bei der Umwandlung von Gleitkommazahlen rundet
Die Zeichen werden nicht sofort in die externe Datei geschrieben, sondern in einem C-internen Puffer zwischengespeichert (siehe Abschnitt "Pufferung“ (Grundbegriffe)). Maximale Anzahl der auszugebenden Zeichen: Bei KR-Funktionalität (nur bei C/C++ Versionen kleiner V3.0 vorhanden) können pro Versuche, nicht initialisierte Variablen oder Variablen nicht entsprechend ihrem Datentyp auszugeben, können zu undefinierten Ergebnissen führen. Das Verhalten ist undefiniert, wenn in einer Formatanweisung dem Prozentzeichen (%) ein nicht definiertes Formatierungs- bzw. Umwandlungszeichen folgt. Bei Textdateien mit der Zugriffsart SAM und variabler Satzlänge, für die zusätzlich eine maximale Satzlänge angegeben ist, gilt: Wenn bei | |
Beispiel | #include <stdio.h> #include <stdlib.h> int main(void) { FILE *fp; char c, name[40]; int i; char *string; double d; printf("Name der Ausgabedatei: \n"); gets(name); if((fp = fopen(name,"w")) == NULL) { printf("Can't open %s\n", name); exit(1); } c = 'A'; i = 999; string = "Dies ist ein String."; d = 123.456; fprintf(fp, "%c %d %s %f\n", c, i, string, d); fclose(fp); puts("Richtige Ausgabe in Datei:A 999 Dies ist ein String. 123.456000"); return 0; } | |
Siehe auch | printf, sprintf, snprintf, putc, putchar, puts, scanf, fscanf |