GOLang Scanf Error pada Windows
Dalam GOLang, fungsi Scanf diketahui mengalami ralat apabila digunakan secara berturut-turut pada sistem Windows. Walaupun penggunaan pertama Scanf berjaya mendapatkan semula input pengguna, percubaan berikutnya gagal, membawa kepada keluar secara tiba-tiba daripada fungsi.
Untuk membetulkan isu ini, adalah dinasihatkan untuk menggunakan pakej Bufio, yang menawarkan pendekatan yang lebih halus . Bufio mengabstraksi kerumitan tertentu Scanf, seperti pergantungannya pada ruang sebagai pemisah. Berikut ialah contoh cara menggunakan Bufio untuk mengumpulkan bukti kelayakan dengan anggun:
<code class="go">func credentials() (string, string) { reader := bufio.NewReader(os.Stdin) fmt.Print("Enter Username: ") username, _ := reader.ReadString('\n') fmt.Print("Enter Password: ") password, _ := reader.ReadString('\n') return strings.TrimSpace(username), strings.TrimSpace(password) // ReadString() leaves a trailing newline character }</code>
Dengan menggunakan ReadString untuk mendapatkan semula input pengguna, pakej Bufio menghapuskan isu yang dialami dengan Scanf pada Windows. Ia juga mengendalikan watak baris baharu yang mengekori secara automatik, memastikan tangkapan data yang bersih dan konsisten.
Atas ialah kandungan terperinci Mengapa Scanf Gagal pada Windows di Golang?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!