Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Rust 获取int的基本输入_Rust_Rust Obsolete - Fatal编程技术网

Rust 获取int的基本输入

Rust 获取int的基本输入,rust,rust-obsolete,Rust,Rust Obsolete,我很惊讶,我似乎无法在rust的文档中找到任何描述io的案例,有人能给我解释一下如何使用基本io将用户输入到例如整数中吗?也许在那个该死的文档中可以找到io的详细信息?感谢: 常见的I/O类型,包括文件、TCP、UPD、管道、Unix域 套接字、计时器和进程生成在io模块中定义 并从该文档链接: 阅读: 回答有关ints的问题。(所有这些类型注释都是可选的,我在每个步骤中都进行了区分。) 使用std::io; fn main(){ 让mut stdin=io::stdin(); 让err_lin

我很惊讶,我似乎无法在rust的文档中找到任何描述io的案例,有人能给我解释一下如何使用基本io将用户输入到例如整数中吗?也许在那个该死的文档中可以找到io的详细信息?感谢:

常见的I/O类型,包括文件、TCP、UPD、管道、Unix域 套接字、计时器和进程生成在io模块中定义

并从该文档链接:

阅读:


回答有关
int
s的问题。(所有这些类型注释都是可选的,我在每个步骤中都进行了区分。)

使用std::io;
fn main(){
让mut stdin=io::stdin();
让err_line:io::IoResult=stdin.read_line();
let line:String=err_line.unwrap();
让line_no_extra_whitespace:&str=line.as_slice().trim();
允许可能的\u编号:选项=从\u str(行\u no\u额外的\u空格);
匹配可能的\u编号{
Some(n)=>println!(“双倍的数字是{}”,2*n),
无=>println!(“请键入一个整数”)
}
}
文档(注意,文档中几乎所有类型都可以单击,将您带到一个页面,其中包含更多描述/列出您可以使用它们做什么):

  • (请注意,这只是重命名类型,也就是说,它实际上是一个。)
  • (以及它所包裹的特征。)
  • (您可以在实施者列表中看到。)
  • None
    Some
    选项的两个变体
此外,请注意,文档可以通过页面顶部的搜索框进行搜索,例如。(您可以在任何页面上按“s”键跳转到搜索框,准备键入。)


您可能还对分配的堆
String
和字符串片
&str
之间的差异感兴趣


其他人则指出了这些文档的输入点和特定于IO的内容。还有一些地方有很好的信息,比如文本,用于处理IO操作的返回值(记住,
IoResult
是一个
Result
,因此支持所有这些操作),IRC.mozilla.org()上的#rust IRC频道通常有多个人愿意帮助。

是的,但是,将io存储到变量中而不是打印怎么样?我没有看到任何关于
行类型的文档,或者除了打印一些东西以外的任何东西。你的问题让我觉得你甚至找不到我发布的内容。你看到这个了吗@SyntacticFructose,
io::stdin()
返回由于trait impl而具有方法的
lines()
方法返回实现迭代器协议的结构,也就是说,它是一个迭代器,返回类型为
IoResult
的项。迭代器可以在
中用于
循环,这一点您无疑从教程中了解。非常感谢,我希望rust docs计划引入更多类似于您编写的示例。为什么我不能从{
中进行
匹配?rust说它“无法推断足够的类型信息”.我怎么能不用多说几句就说出来呢?啊,我在这里发现的
use std::io;

for line in io::stdin().lines() {
    print!("{}", line.unwrap());
}