Bagaimanakah cara saya mensimulasikan End-of-File (EOF) dalam Strim Input Standard (stdin)?

Patricia Arquette
Lepaskan: 2024-10-29 01:23:02
asal
445 orang telah melayarinya

How do I simulate an End-of-File (EOF) in the Standard Input Stream (stdin)?

Tamat Fail (EOF) dalam Strim Input Standard (stdin)

Soalan:

Adakah stdin mempunyai penanda akhir fail? Jika tidak, bolehkah ditambah?

Jawapan:

EOF dalam Stdin

stdin secara semula jadi tidak mempunyai EOF penanda. Apabila membaca daripada stdin (cth., menggunakan fread atau baca), gelung:

while ((c = read(0, buffer, BUFSIZ)) > 0) {
    // ...
}
Salin selepas log masuk

tidak akan berakhir melainkan EOF disimulasikan secara eksplisit.

Simulasi EOF dalam Stdin

Dalam sistem UNIX, tekan Ctrl D untuk mensimulasikan EOF dalam stdin. Dalam Windows, tekan Ctrl Z. Ini akan menyebabkan atur cara berkelakuan seolah-olah ia telah sampai ke penghujung fail input.

Mengubah Hala Input

Apabila input dialihkan daripada fail (cth., program < input.txt), fail itu sendiri mengandungi EOF, jadi ini bukan isu.

Penjelasan Tambahan

Stdin tanpa pengalihan boleh dianggap sebagai fail tak terhingga. Penghujung input mesti diberi isyarat secara manual dengan mensimulasikan EOF menggunakan Ctrl D atau Ctrl Z.

Atas ialah kandungan terperinci Bagaimanakah cara saya mensimulasikan End-of-File (EOF) dalam Strim Input Standard (stdin)?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!