format in alloc - Rust (original) (raw)
Macro format
1.36.0 · Source
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::fmtfor 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"