关闭

Linux下的进度条小程序

标签: linux
132人阅读 评论(0) 收藏 举报
分类:

一个简单的进度条需要两个属性:最大/最小范围和步长。
例如,创建一个范围为0到100的载入进度条,把进度条初始为0,当载入一个资源的时候用单位长度来让进度条前进一个步长。
(1)当进度条前进时,它都会重画自身(也就是每次从最左端开始显示比上一次多一个步长,就有了动态效果),那么就需要执行一次回车,让光标回到最左端;

printf("[%-101s]\r",bar);

这里写图片描述

(2)为了更清楚的显示进度,加上%

printf("[%-101s][%d%%][%c]\r",bar,rate,labal[rate%4]);

这里写图片描述

代码:

void proc()
{
    char bar[102];
    memset(bar, '\0', sizeof(bar));
    int rate = 0;
    const char* labal = "|/-\\";
    while (rate <= 100)
    {
        bar[rate] = '=';
        printf("[%-101s][%d%%][%c]\r", bar, rate, labal[rate % 4]);
        ++rate;
        fflush(stdout);

    }
    printf("\n");
}

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:6780次
    • 积分:412
    • 等级:
    • 排名:千里之外
    • 原创:35篇
    • 转载:0篇
    • 译文:0篇
    • 评论:0条