linux上编写进度条

目录

一、预备的两个小知识

1、缓冲区

首先认识一下缓冲区:先写一个.c文件如下:

我们执行一下这个程序时,我们发现当过三秒 之后"you can see me "这句话才打印出来,这是因为有缓冲区 ,printf执行完之后将这一个字符串保存在了缓冲区,当 return 0 程序结束后进行刷新才会将字符串打印出来

fflush(stdout);:在屏幕上刷新,就算程序没有结束也可以打印在屏幕上。

2、回车与换行

换行:换到下一行的相同位置。

回车:回到一行的最开始,"\r":只回车,不换行。

二、倒计时程序

这个程序是先对上面两个小知识的熟悉和操作。

三、编写入门的进度条

打印出来后是:

...

四、编写一个正式的

最后的运行结果如下:

五、模拟实现和下载速度相关的进度条

进度条不可能是像上面那样自己规定速度自己走的,肯定是跟着别的程序运行,所以我们模拟实现一下,如下:

生成如下:

以上就是进度条的实现了。

相关推荐
yyuuuzz22 分钟前
aws 基础认知与实践注意点
运维·服务器·网络·云计算·github·aws
Rust语言中文社区27 分钟前
【Rust日报】2026-05-02 Temper - 用 Rust 编写的 Minecraft 服务器项目发布 0.1.0 版
运维·服务器·开发语言·后端·rust
吠品1 小时前
高性能JS数组操作:何时选用push、unshift、splice或扩展运算符?
linux·服务器·数据库
fish_xk1 小时前
Linux中的指令和权限
linux·运维·服务器
暴力求解1 小时前
Linux---内核态
linux·运维·服务器
mounter6251 小时前
深入理解 Linux 网络新特性:netkit 中的 RX/TX Queue Leasing 与 TCP Devmem
linux·服务器·网络·tcp/ip·kernel
空中海2 小时前
02. 静态逆向、Manifest 分析与 Smali 重打包
服务器·网络·windows
dvjr cloi2 小时前
Linux(CentOS)安装 MySQL
linux·mysql·centos
江南十四行2 小时前
AI Agent应用类型及Function Calling开发实战(三)
服务器·前端·javascript
炘爚2 小时前
TCP三次握手和四次挥手
服务器·网络·tcp/ip