以下会给出具体实现代码,并且会写上注释
#include<unistd.h>
#include<string.h>
int main()
{
int i = 0;
char bar[102];
//设置一个数组来存储‘#’,每次打印多打印一个#
memset(bar, 0, sizeof(bar));
//将bar数组用0来初始化
const char* lable = "|/-\\";
//设置一种动态效果,一种转动的指针
while(i <= 100)
{
printf("[%-100s][%d%%][%c]\r", bar, i, lable[i%4]);
//注意其中的\r表示回车,即清空第一行打印出来的东西,重新从第一个字符打印
fflush(stdout);
//将在缓冲区中的数据打印出来,避免程序结束才刷新缓冲区,而打印出结果
bar[i++] = '#';
//每次将bar数组中的下一个位置设置成‘#’
usleep(10000);
//休眠0.1秒
}
printf("\n");
return 0;
}