On this page
Macro std::format
macro_rules! format {
($($arg:tt)*) => { ... };
}
Creates a String
using interpolation of runtime expressions.
The first argument format!
receives is a format string. This must be a string literal. The power of the formatting string is in the {}
s contained. Additional parameters passed to format!
replace the {}
s within the formatting string in the order given unless named or positional parameters are used.
See the formatting syntax documentation in std::fmt
for details.
A common use for format!
is concatenation and interpolation of strings. The same convention is used with print!
and write!
macros, depending on the intended destination of the string; all these macros internally use format_args!
.
To convert a single value to a string, use the to_string
method. This will use the Display
formatting trait.
To concatenate literals into a &'static str
, use the concat!
macro.
Panics
format!
panics if a formatting trait implementation returns an error. This indicates an incorrect implementation since fmt::Write for String
never returns an error itself.
Examples
format!("test"); // => "test"
format!("hello {}", "world!"); // => "hello world!"
format!("x = {}, y = {val}", 10, val = 30); // => "x = 10, y = 30"
let (x, y) = (1, 2);
format!("{x} + {y} = 3"); // => "1 + 2 = 3"
© 2010 The Rust Project Developers
Licensed under the Apache License, Version 2.0 or the MIT license, at your option.
https://doc.rust-lang.org/std/macro.format.html