Adakah `input.Scan()` Memerlukan Klausa `if` untuk Mengendalikan Input 'menamatkan'?

Linda Hamilton
Lepaskan: 2024-11-11 21:57:03
asal
889 orang telah melayarinya

Does `input.Scan()` Require an `if`-Clause to Handle

Memecahkan input.Imbas() tanpa Klausa if

Dalam kod anda, anda cuba untuk menghapuskan klausa if yang mengendalikan input "akhir". Mari kita periksa dokumentasi input.Scan() untuk menjelaskan jika klausa-if diperlukan.

Menurut dokumentasi, input.Scan() mara ke token seterusnya dan mengembalikan palsu apabila imbasan tamat sama ada perlu untuk mencapai penghujung input atau ralat. Walau bagaimanapun, fungsi pemisahan lalai untuk input.Scan() ialah ScanLines, yang mengembalikan setiap baris teks tanpa sebarang penanda hujung baris yang mengekori.

Dua perkara penting yang perlu diberi perhatian di sini ialah:

  1. ScanLines mengendalikan baris kosong: Ini bermakna ia mengembalikan baris kosong sebagai token.
  2. Barisan tidak kosong terakhir dikembalikan tanpa baris baharu: Jika baris terakhir baris input tidak kosong, ia akan dikembalikan walaupun ia tidak mempunyai baris baharu.

Oleh itu, menaip baris kosong (menekan Enter) tidak akan menamatkan pengimbas. Ia hanya akan mengembalikan baris kosong sebagai tanda. Pengimbas hanya akan berhenti berjalan apabila:

  • Tamat-Fail (EOF) dicapai: Ini boleh dicapai dengan menaip Ctrl-D atau menggunakan kaedah lain untuk menandakan akhir input.
  • Ralat berlaku semasa mengimbas: Ini tidak mungkin dalam senario asas.

Berdasarkan pemahaman ini, adalah tidak perlu untuk memasukkan if -klausa untuk menyemak input kosong. Pengimbas akan keluar dari gelung secara automatik apabila EOF dicapai.

Untuk meringkaskan, kod anda akan terus berfungsi seperti yang dimaksudkan, keluar dari gelung apabila pengguna menaip "tamat" atau mencapai EOF, walaupun tanpa klausa-jika.

Atas ialah kandungan terperinci Adakah `input.Scan()` Memerlukan Klausa `if` untuk Mengendalikan Input 'menamatkan'?. 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