macro_rules! format { ($($arg:tt)*) => { ... }; }
Expand description
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"