Bahasa pemrograman karat sangat disukai karena kinerjanya, keamanan memori, dan konkurensinya. Namun, sebagai bahasa pemrograman sistem, kadang-kadang mungkin kurang intuitif untuk pengoperasian bagi pengembang pemula yang lebih mudah diakses dalam bahasa tingkat tinggi lainnya, seperti mendapatkan masukan pengguna. Artikel ini akan membahas masalah bagaimana mendapatkan masukan pada baris yang sama dengan pertanyaan di Rust.
Mendapatkan masukan dari pengguna sangat penting dalam mengembangkan program atau aplikasi interaktif. Di Rust, kami sering menggunakan aliran input standar, Stdin, yang disediakan oleh modul std::io. Namun, ini mungkin tidak menempatkan masukan pengguna pada baris yang sama dengan pertanyaan. Mari kita lihat bagaimana kita bisa mencapainya.
gunakan std::io::{mandiri, Tulis};
biarkan mut input = String::new();
print!(“Masukkan Nama Anda : “);
io::stdout().flush().unwrap();
io::stdin().read_line(&mut masukan).unwrap();
biarkan nama: String = input.trim().to_string();
println!(“Halo, {}”, nama);
Perincian kode langkah demi langkah
- Di baris pertama, kami mengimpor modul yang diperlukan dari std::io. Modul io menyediakan fungsionalitas Rust untuk menangani berbagai jenis input dan output.
- Kami kemudian mendeklarasikan String yang bisa berubah yang disebut input. Ini akan menahan input pengguna.
- Cetakannya! makro digunakan untuk menampilkan prompt input tanpa baris baru di akhir. Hal ini penting agar masukan pengguna bisa sejajar dengan pertanyaan.
- Karena mencetak! fungsi tidak secara otomatis menghapus buffer stdout, kita perlu menghapusnya secara manual menggunakan panggilan io::stdout().flush(). Ini memastikan bahwa perintah input segera ditampilkan.
- Kami kemudian menggunakan fungsi read_line dari struct Stdin dan meneruskan referensi input ke sana. Fungsi ini membaca masukan pengguna dari konsol dan menambahkannya ke variabel masukan kami. Kami juga memangkas masukan untuk menghapus karakter baris baru yang tertinggal yang dapat mengganggu kode berikutnya.
- Terakhir, kami mencetak input yang diberikan oleh pengguna.
Memahami struct Stdin dan fungsi read_line
The Struktur stdin mewakili pegangan ke aliran input standar suatu proses. Struct ini digunakan dalam kode kita untuk mengambil input pengguna. Struct ini hadir dengan berbagai metode yang dapat digunakan untuk memanipulasi data masukan.
Metode struct Stdin yang paling umum digunakan di Rust adalah metode read_line. Itu baca_baris() metode di Rust berada di bawah sifat Baca. Sifat Baca adalah API utama di Rust untuk membaca byte. Dibutuhkan &mut String sebagai parameter tempat string input disimpan.
Mudah-mudahan, kami sekarang telah mengungkap misteri mendapatkan masukan pada baris yang sama dengan pertanyaan di Rust. Lain kali Anda membuat kode CLI di Rust, ingatlah langkah-langkah dan kode berikut dengan cara yang mudah digunakan.
