跳到主要内容

Rust 格式化输出

阐述​

  • print! 格式化文本输出到标准输出
  • println! 同上,但是添加换行符
  • eprint! 格式化文本输出到标准错误
  • eprintln! 同上,但是添加换行符
  • format! 格式化文本输出到 Rust 字符串

占位符​

  • {} 实现了 fmt::Display 特征的类型
  • {:?} 实现了 fmt::Debug 特征的类型
  • {:#?} 同上,但是分行输出

参数​

位置参数​

用 {0}, {1} 等等来让指定位置的参数来替换占位符

fn main() {
println!("{}{}", 1, 2); // =>"12"
println!("{1}{0}", 1, 2); // =>"21"
// => Alice, this is Bob. Bob, this is Alice
println!("{0}, this is {1}. {1}, this is {0}", "Alice", "Bob");
println!("{1}{}{0}{}", 1, 2); // => 2112
}

命名参数​

用 {name} 来把指定名称的参数来替换占位符

fn main() {
println!("{argument}", argument = "test"); // => "test"
println!("{name} {}", 1, name = 2); // => "2 1"
println!("{a} {c} {b}", a = "a", b = 'b', c = 3); // => "a 3 b"
}

捕获参数​

fn get_person() -> String {
String::from("sunface")
}
fn main() {
let person = get_person();
println!("Hello, {person}!");
}

格式化参数​

  • 小数点:{:.2}
  • 科学计数法:{:.2e}
  • 宽度:{:5}
  • 对齐:{:<5}, {:>5}

实例​

性质​

相关内容​

参考文献​