2011-07-06 168 views
1

我在Linux中使用C語言。如何顯示一個進度指示器,讓我知道程序(或程序的某些部分)何時會完成?例如,它可能類似於「搜索...... 67%」,並且百分比將繼續增加,直到搜索部分結束。顯示進度指示器

謝謝。

回答

2

我相信,如果你這樣做:

while (perc < 100) { 
    printf("Searching... %d%%\r", perc); 
    fflush(stdout); 
    //do work 
} 

fflush()有必要避免行緩衝。請注意,我正在使用\r而不是\n

3

將一個'\r'字符寫入標準輸出以將光標返回到行的開頭,以便您可以覆蓋該行。例如:

for (i=0; i<100; i++) { 
    printf("\rSearching...%d%%", i); 
    fflush(stdout); 
    sleep(1); 
} 
+0

我打你10秒鐘,gj +1 –