实现控制台下载进度效果

    科技2024-09-29  18

    效果

    代码

    用最朴素的语言,做最朴素的事情!此效果关键在于输出字符 \b 有退格的效果。希望读者能够在理解原理的基础上灵活运用。

    #include <stdio.h> #include <stdlib.h> #include <Windows.h> char buf[] = "\b\b\b\b\b\b\b\b\b\b" \ "\b\b\b\b\b\b\b\b\b\b" \ "\b\b\b\b\b\b\b\b\b\b" \ "\b\b\b\b\b\b\b\b\b\b" \ "\b\b\b\b\b\b\b\b\b\b" \ "\b\b\b\b\b\b\b\b\b\b" \ "\b\b\b\b\b\b\b\b\b\b" \ "\b\b\b\b\b\b\b\b\b\b" \ "\b\b\b\b\b\b\b\b\b\b" \ "\b\b\b\b\b\b\b\b\b\b" ; void cls() { printf(buf); } int main() { for (int i = 0; i < 100; i++) { cls(); printf("["); for (int j = 0; j < 20; j++) { printf(j <= i / 5 ? ">" : " "); } printf("]"); printf(" 正在下载,已完成 %d %%", (i + 1)); Sleep(100); } printf("\n"); system("pause"); return 0; }
    Processed: 0.010, SQL: 8