我想用C創建一個加載器動畫。我無法弄清楚,所以我儘量保持簡單。我試圖做這樣的事情:首先 它會出現:創建一個加載動畫
[ ]
[| ]
[|| ]
等等...
我想使用睡眠功能,所以它會像它的實際加載但不能太慢,增加百分比會很好,我想如果它是一個for循環與「我」作爲一個整數計數其移動比它將printf("i%%");
作爲「%」不會打印「%」,但「%%」。 你有什麼線索我該怎麼做?
編輯: 這就是我這麼遠,不工作是有原因的:
for(i = 1 ; i <= 100 ; i++)
{
Sleep(10);
printf("\r");
printf("[");
for(j = 1 ; j <= i ; j++)
{
printf("|");
}
}
printf("]");
但它僅打印「[|」然後「[||」那麼「[|||」等等(它的打印方式太多「|」了)。我希望它打印「[]」(100個空格),然後是「[|]」,這樣每次看到第一個和最後一個括號。
第二個編輯: 做到了這一點:
void changestr(char str[], int n)
{
str[n] = '|';
}
void loader()
{
int i, j, n = 0;
char str[] = " ";
for(i = 0 ; i < 97 ; i++)
{
printf("\r[%-100s]", str);
changestr(str, n);
n++;
}
}
,它的打印噸線,而不是覆蓋第一.... 怎麼辦?
代碼請.... – suspectus
你不能只是建立一個char數組並顯示在括號集之間使用for循環?所以你首先循環訪問一個''的數組,然後在這個數組結尾處,將數組中的第一項改爲'*',然後再次循環,等等。當然,如果你想要一個實際的進度條,在後臺發生的東西,你需要使用線程等。 –
Annabelle
你是說這是一個「假」的進度條嗎?在顯示欄中沒有發生任何事情? – ooga