Getting input from the console
Suppose we want to capture the nickname of our player
(s) before starting the game, how would we do that? Input or output functionality is handled by the module io
in the crate std
. It has a function stdin()
to read input from the console. This function returns an object of type Stdin
, which is a handle to the input stream. The object Stdin
has a method read_line(buf)
to read a full line of input, that ends with a new line character (that is, when the user hits Enter). This input is read into a String
buffer buf
. A method is a name for a function defined for a certain type, and it is called using dot notation, like object.method
(see Chapter 6, ;Using Traits and OOP in Rust).
So our code will look like this:
let mut buf = String::new(); io::stdin().read_line(&mut buf);
But that is not good enough for Rust, it gives us the following warning:
warning: unused result which must be used
Rust is foremost a safe language and we must be ready to cope with everything...