gpt4 book ai didi

rust - 打印!错误 : expected a literal/format argument must be a string literal

转载 作者:行者123 更新时间:2023-11-29 07:40:06 32 4
gpt4 key购买 nike

这个极其简单的 Rust 程序:

fn main() {
let c = "hello";
println!(c);
}

抛出以下编译时错误:

error: expected a literal
--> src/main.rs:3:14
|
3 | println!(c);
| ^

在以前的 Rust 版本中,错误表示:

error: format argument must be a string literal.
println!(c);
^

将程序替换为:

fn main() {
println!("Hello");
}

工作正常。

我不清楚这个错误的含义,谷歌搜索也没有真正阐明它。为什么将 c 传递给 println! 宏会导致编译时错误?这似乎是非常不寻常的行为。

最佳答案

这应该有效:

fn main() {
let c = "hello";
println!("{}", c);
}

字符串 "{}" 是一个模板,其中 {} 将被传递给 println! 的下一个参数替换。

关于rust - 打印!错误 : expected a literal/format argument must be a string literal,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27734708/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com