如何在Rust中打印固定宽度、保留1位小数的F32类型数值
Rust 实现 C 风格
%6.1f 格式化输出方案 直接可用的代码写法
你需要的效果可以通过 Rust 标准格式化语法直接实现,对应写法如下:
// 等效于C的 printf("%6.1f %6.1f %6.1f\n", x, y, z); println!("{:6.1} {:6.1} {:6.1}", x, y, z);
语法规则说明
- 格式化占位符内的
6.1正好匹配你的需求:6指定输出总宽度为6个字符,.1指定保留1位小数 - 默认采用右对齐规则,长度不足时左侧自动补空格,和C语言
printf的%6.1f行为完全一致 - 只要变量是
f32/f64浮点类型,不需要额外添加类型后缀,格式化器会自动适配
验证示例
你可以运行以下代码验证输出效果:
fn main() { let x = 3.1415; let y = 12.789; let z = 123.45; println!("{:6.1} {:6.1} {:6.1}", x, y, z); }
运行输出结果:
3.1 12.8 123.5
每个数值的占宽均为6个字符,完全符合要求。
内容的提问来源于stack exchange,提问作者crawdady
相关产品推荐
相关产品推荐

