格式化循环中的数字
我想列出 0000-9999 之间的所有数字,但我在保留零位时遇到困难。
我尝试过:
for(int i = 0; i <= 9999; ++i)
{
cout << i << "\n";
}
但我得到:1,2,3,4..ect 我怎样才能使它成为0001,0002,0003....0010等
I want to list all numbers from 0000-9999 however I am having trouble holding the zero places.
I tried:
for(int i = 0; i <= 9999; ++i)
{
cout << i << "\n";
}
but I get: 1,2,3,4..ect
How can I make it 0001,0002,0003....0010, etc
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
请参阅 setfill 以指定填充字符,以及 setw 用于指定最小宽度。
您的案例如下所示:
See setfill for specifying the fill character, and setw for specifying the minimum width.
Your case would look like:
您只需要设置一些标志:
You just need to set some flags:
使用 ios_base::width() 和 ios::fill() :
或者,使用 IO 操纵器:
Use
ios_base::width()
andios::fill()
:Alternatively, use the IO manipulators:
虽然不是必需的,但如果您想知道如何使用 C 语言执行此操作,这里有一个示例:
Here, '0' in "%04d" 的工作方式类似于
setfill('0')
和 '4 ' 的工作方式类似于setw(4)
。Though not required, but if you want to know how to do this with C, here is an example:
Here, '0' in "%04d" works like
setfill('0')
and '4' works likesetw(4)
.