Avatar ·

Rust错误:使用println!时出现“expected a literal”——如何修复?

你好!我刚开始学习Rust,遇到了一个无法理解的错误。我尝试通过println!输出变量的值,但编译器报错。 这是我的代码: ```rust fn main() { let name = "Alice"; println!("Hello, " + name + "!"); } ``` 编译器输出: ``` error: expected a literal --> src/main.rs:3:23 | 3 | println!("Hello, " + name + "!"); | ^ | help: format argument must be a string literal ``` 我原本期望字符串像在Python或JavaScript中那样拼接,但Rust显然不想这样工作。为什么?如何正确输出变量?我尝试去掉拼接,直接写`println!("Hello, name!")`——结果输出的是字面量“Hello, name!”,而不是变量的值。 请告诉我哪里做错了?我在文档中找到了关于宏的提及,但没有完全理解。需要一个简单的示例来展示如何输出带变量的字符串。提前感谢! <<>>

为什么会出现错误