如何填充 printf 以考虑负号和可变长度数字?
我正在尝试在日志文件中输出一些数字,并且想通过 printf 函数填充浮点数以生成:
058.0
020.0
038.0
-050.0
800.0
150.0
100.0
目前我正在这样做:
printf("% 03.1f\n", myVar);
...其中 myVar 是浮点数。该语句的输出如下所示:
58.0
20.0
38.0
-50.0
800.0
150.0
100.0
从 我读过的内容 我希望我的代码能够产生我在本文顶部提到的输出,但显然有些问题。一次只能使用一个标志吗? ..或者这里还有其他事情发生吗?
I'm trying to output some numbers in a log file and I want to pad a load of floats via the printf
function to produce:
058.0
020.0
038.0
-050.0
800.0
150.0
100.0
Currently I'm doing this:
printf("% 03.1f\n", myVar);
...where myVar is a float. The output from that statement looks like this:
58.0
20.0
38.0
-50.0
800.0
150.0
100.0
From what I've read I would expect my code to produce the output I mentioned at the top of this post, but clearly something is wrong. Can you only use one flag at a time? ..or is there something else going on here?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
宽度说明符是完整的宽度:
要获得您期望的格式:
The width specifier is the complete width:
To get your expected format:
跟随埃里克,
但我发现
也有效。
follows Erik,
but I find
also works.