Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bolehkah Baris Kosong Mencetuskan `input.Scan()` untuk Mengembalikan Palsu dalam Go?

Bolehkah Baris Kosong Mencetuskan `input.Scan()` untuk Mengembalikan Palsu dalam Go?

Susan Sarandon
Susan Sarandonasal
2024-11-11 06:07:02669semak imbas

Can Empty Lines Trigger `input.Scan()` to Return False in Go?

Breaking Out of Input.Scan()

In Go, fungsi input.Scan() biasanya digunakan untuk membaca input daripada konsol. Walaupun kod yang disediakan dalam soalan berfungsi dengan berkesan, pengarang mencari cara untuk menghapuskan klausa if yang menyemak kata kunci "tamat" untuk keluar dari gelung.

Menurut dokumentasi, Scan() mengembalikan palsu apabila imbasan berhenti, sama ada dengan mencapai penghujung input atau menghadapi ralat. Walau bagaimanapun, pemahaman pengarang adalah bahawa baris kosong harus mencetuskan pengembalian palsu, dengan itu menamatkan gelung tanpa memerlukan klausa-if.

Setelah diperiksa, pengimbas lalai yang digunakan dalam kod yang disediakan sebenarnya ialah ScanLines , bukan ScanWords. ScanLines mengembalikan setiap baris teks, dilucutkan sebarang penghujung baris dan mungkin mengandungi baris kosong. Yang penting, walaupun baris input terakhir yang tidak kosong akan dikembalikan, walaupun ia tidak mempunyai penghujung baris.

Pengimbas berhenti beroperasi hanya apabila ia menemui EOF (End Of File). Oleh itu, klausa-if dalam kod asal masih diperlukan untuk menamatkan gelung apabila pengguna memasukkan "tamat" untuk menandakan berakhirnya input.

Atas ialah kandungan terperinci Bolehkah Baris Kosong Mencetuskan `input.Scan()` untuk Mengembalikan Palsu dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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