作者claus (La Jolla)
看板perl
标题一个显示进度的loop
时间Wed Mar 8 13:39:41 2006
想写一个显示程式运作进度的loop
想要有下面的结果出来
<执行到10%的时後的画面>
**
<执行到20%的时候的画面>
****(多两个**)
if (进度 % 10 == 0) {
print "**";
}
可是,他会等到程式全部跑完,才出现
***********************************************
而不会像我想像中出现
**
****
****** 的慢慢变长的动画(在同一行)
然後我改成
if (进度 % 10 == 0) {
print "**\n";
}
就可以有类似动画出现,可是会换行,变成
**
****
****** (共三行)
为什麽差个 \n 他print的时机就差这麽多呢?
是因为print会先把要print的东西存到一个buffer memory里面,满了才print吗?
有什麽办法达到我想要的结果呢?
感谢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.59.21
1F:推 megaman1206:使用 $|=1; 03/08 15:23
2F:→ Armonicos:试试看print STDERR "**" 03/08 15:45