Risposte:
Non c'è modo di echeggiare un EOF. Un EOF può essere generato solo raggiungendo la fine di un file o invocando il tasto premuto associato eofall'impostazione del terminale ( CtrlDper impostazione predefinita) quando il file letto è associato al terminale.
intcon il valore -1 (o 4294967295 se consideriamo la versione non firmata) non può comunque essere un carattere poiché i caratteri possono avere solo un valore compreso tra 0 e 255 inclusi.
intin primo luogo?
fgetc(3)pagina man.
In bash potresti scrivere exec 1>&-per chiudere il descrittore di file noto come stdout.
Come già detto Ignacio, EOF non è un personaggio, quindi la domanda su come "fare eco a EOF" non ha alcun senso in primo luogo. È possibile eseguire l'eco dei caratteri (byte) o chiudere un descrittore di file, ma non è mai possibile eseguire l'eco di un EOF.
EOFdefinito come-1in stdio.h? perché non riecheggiamo se conosciamo il suo valore ASCII?