Jawaban:
Tidak ada cara untuk menggemakan EOF. EOF hanya dapat dihasilkan dengan mencapai akhir file atau dengan menekan tombol yang terikat pada eofpengaturan terminal ( CtrlDsecara default) ketika file yang sedang dibaca terikat ke terminal.
intdengan nilai -1 (atau 4294967295 jika kami menganggap versi yang tidak ditandatangani) tidak mungkin menjadi karakter karena karakter hanya dapat memiliki nilai dari 0 hingga 255 inklusif.
intpertama?
fgetc(3)halaman manual.
Di bash Anda bisa menulis exec 1>&-untuk menutup file descriptor yang dikenal sebagai stdout.
Seperti yang sudah dikatakan Ignacio, EOF bukan karakter, jadi pertanyaan bagaimana "menggemakan EOF" tidak masuk akal sejak awal. Anda dapat menggemakan karakter (byte) atau Anda dapat menutup deskriptor file, tetapi Anda tidak pernah dapat menggemakan EOF.
EOFdidefinisikan seperti-1di stdio.h? mengapa tidak bisa mengulanginya jika kita tahu nilai ascii-nya?