尝试在Rust v0.13.0中打印整数时编译错误

时间:2015-05-11 05:51:54

标签: compiler-errors rust

我认为这样可行:

let x = 5;
println!("x = {}", x);

但是它给出了以下编译错误:

main.rs:3:24: 3:25 error: unable to infer enough type information to locate the impl of the trait `core::fmt::Show` for the type `_`; type annotations required                                                                             
main.rs:3     println!("x = {}", x);

我错过了什么吗?

我使用的是online Rust compiler,他们的版本是Rust v0.13.0

1 个答案:

答案 0 :(得分:10)

错误是因为您使用的编译器是旧的。对于此编译器,请尝试显式给出整数类型:

let x: i32 = 5;
println!("x = {}", x);

在较新的编译器上,即使没有明确指定i32,您的代码也会按原样运行:

let x = 5;
println!("x = {}", x);

您可以使用https://play.rust-lang.org/上的官方在线编译器,它始终是Rust的最新版本。