相关疑难解决方法(0)

调用println!错误:预期文字/格式参数必须是字符串文字

这个非常简单的Rust程序:

fn main() {
    let c = "hello";
    println!(c);
}
Run Code Online (Sandbox Code Playgroud)

抛出以下编译时错误:

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

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

error: format argument must be a string literal.
     println!(c);
              ^
Run Code Online (Sandbox Code Playgroud)

用以下代替程序:

fn main() {
    println!("Hello");    
}
Run Code Online (Sandbox Code Playgroud)

工作良好.

这个错误的含义对我来说并不清楚,谷歌的搜索并没有真正揭示它.为什么传递cprintln!宏会导致编译时错误?这似乎是非常不寻常的行为.

rust

57
推荐指数
3
解决办法
2万
查看次数

标签 统计

rust ×1