![]() Vorherige Seite |
![]() Eine Ebene hoch |
![]() Nächste Seite |
---|
Die Funktionen printf und scanf verarbeiten Daten für den Bildschirm, bzw. von der Tastatur. Beim Verarbeiten von Dateien, bzw. Zeichenketten werden ebenfalls Befehle für die Ein- und Ausgabe benötigt. C stellt für diese Zwecke sehr ähnliche Funktionen zur Verfügung.
Für das Verarbeiten von Dateien werden die Funktionen fprintf und fscanf angeboten. Die beiden Funktionen erwarten als ersten Parameter, also noch vor dem Formatstring, einen Zeiger auf die Struktur FILE. In dieser Struktur befinden sich alle nötigen Informationen damit die beiden Funktionen auf Dateien zugreifen können. Ein Beispiel für das Öffnen und Schließen von Dateien findet sich in Abschnitt A1.2. Das Einlesen einer Zahl d vom Typ double mittels der Struktur inp vom Typ FILE* sieht so aus:
fscanf(inp, "%ld", &a);
Die Ausgabe der Variable i vom Typ int mittels der Struktur out vom Typ FILE* erfolgt mit:
fprintf(out, "Zahl: %d", I);
Eine weitere Variante ermöglicht die Bearbeitung von Zeichenketten (Strings). Die Befehle hierfür lauten sprintf und sscanf. Das folgende Programmstück zeigt, wie Sie ein Datum formatiert in eine Zeichenkette schreiben können:
int Tag=18, Monat=1, Jahr=1966; char Zeile[81]; sprintf(Zeile, "Datum: %02d.%02d.%04d", Tag, Monat, Jahr);
Nach diesem Programmstück würde in der Zeichenkette Zeile das Datum korrekt stehen:
Datum: 18.01.1966
Mit der Funktion sscanf können entsprechend Daten aus einer Zeichenkette ausgelesen werden.