Karl heinz Buchegger wrote:
> Wie verhält sich getc() (ich denke mal du meinst fgetc())
getc() und fgetc() sind in ihrer Funktion gleich. getc() darf aber
als Makro implementiert sein, der sein Argument mehr als einmal
bewertet, daher könnte es u. U. effektiver implementiert sein.
Was ich aber vergessen habe ist:
1 | getc(fileptr_Quelldatei)
|
Die Funktion bekommt natürlich ein Argument.
> wenn es beim Lesen einen Fehler gab? Wird dann EOF
> geliefert?
Ja, natürlich. Daher muss der Typ der Variablen, auf die man das
Ergebnis zuweist, auch wirklich `int' sein und nicht etwa `char':
EOF ist -1 und damit von allen Zeichen (0...255) verschieden.
Unterscheidung nach Dateiende oder Fehler wie gehabt mit feof()
oder ferror() (eine dieser beiden Funktionen muss wahr sein,
wenn getc() zuvor EOF gebracht hat).