您的位置:首页 > 编程语言 > C语言/C++

C语言实现类似wget的进度条效果

2015-03-10 15:47 706 查看

本文主要是类似wget的进度条的实现,实际就是转移符\r的使用,\r的作用是返回至行首而不换行

复制代码 代码如下:
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
//类似wget的进度条的实现,实际就是转移符\r的使用,\r的作用是返回至行首而不换行
int main(int argc, char *argv[])
{
    unsigned len = 60;
    char *bar = (char *)malloc(sizeof(char) * (len + 1));
    for (int i = 0; i < len + 1; ++i)
    {
        bar[i] = '#';
    }
    for (int i = 0; i < len; ++i)
    {
        printf("progress:[%s]%d%%\r", bar+len-i, i+1);
        fflush(stdout);//一定要fflush,否则不会会因为缓冲无法定时输出。
        usleep(100000);
        //sleep(1);
    }
    printf("\n");
    return 0;
}

以上就是本文的全部内容了,希望大家能够喜欢。

您可能感兴趣的文章:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  C语言 wget 进度条