我将 The Rust Programming Language 中位于heading "Processing a Guess"下的代码复制粘贴到Rust Playground上。但是,标准输出中没有显示提示。我已经搜索了这个问题,我认为这可能是the help lists的“局限性”之一。
我决定我应该使用一些可以在没有Playground的情况下进行编码的软件,但是我还没有设置IDE,因此这也不是我的问题的一部分。
我试图做的是将以下代码复制粘贴到Rust操场上:
use std::io;
fn main() {
println!("Guess the number!");
println!("Please input your guess.");
let mut guess = String::new();
io::stdin().read_line(&mut guess)
.expect("Failed to read line");
println!("You guessed: {}", guess);
}
其结果是它将正确编译,而不会出现任何紧急攻击,错误或警告,并在“标准输出”中显示以下内容:
Guess the number!
Please input your guess.
You guessed:
这本书清单2-1中的信息告诉我们,此代码应该能够从用户和进行猜测的打印件(作为字符串)中获取答案。
我的期望是,我将能够单击“标准输出”中显示以下内容的行:
You guessed:
但是当我单击冒号右侧的空白并开始输入时,没有新的字符串出现。
我在这里错过了重要的东西吗?
答案 0 :(得分:8)
游乐场执行not currently accept user input via stdin。 stdin实际上会立即关闭,因此您的程序将无任何输入,而是继续执行下一行代码,并打印“ guess”(即空字符串)。
这可能是帮助列出的“限制”之一。
不是,但应该是。
资料来源:我是游乐场的创造者。