Rust 如何打印带前导零的二进制整数?

Rust 如何打印带前导零的二进制整数?,rust,Rust,我正在做一些小游戏,我想打印我u16中的所有内容 let flags = 0b0000000000101100u16; println!("flags: {:#b}", flags); 这将打印标志:0b101100 如何使其打印标志:0b0000000000101100 let flags = 0b0000000000101100u16; println!("flags: {:#018b}", flags); 018用零填充,宽度为18。该宽度包括0b(长度=2)加上u16(长度=16),

我正在做一些小游戏,我想打印我u16中的所有内容

let flags = 0b0000000000101100u16;
println!("flags: {:#b}", flags);
这将打印
标志:0b101100

如何使其打印
标志:0b0000000000101100

let flags = 0b0000000000101100u16;
println!("flags: {:#018b}", flags);
018
用零填充,宽度为18。该宽度包括
0b
(长度=2)加上u16(长度=16),因此
18=2+16
。它必须介于
b
之间

Rust的fmt文档解释了和,但没有说明如何组合它们

以下是u8、u16和u32:

//                       Width  0       8      16      24      32
//                              |       |       |       |       |
println!("{:#010b}", 1i8);  // 0b00000001
println!("{:#018b}", 1i16); // 0b0000000000000001
println!("{:#034b}", 1i32); // 0b00000000000000000000000000000001

我如何在两者之间加下划线以使其更具可读性?@AtulGopinathan你需要一个定制的板条箱。