linux第一个小程序 --- 进度条【简洁】

行缓冲区的概念

结果:先输入hello world然后休眠三秒后结束

当去掉''\n" 后,结果就变成了先休眠三秒,然后打印hello world后结束。

该现象就证明了缓冲区的存在。

当缓冲区中遇到''\n''或者缓冲区被写满后才会被打印出来,在第二张图片里面,没有\n,所以hello world先被写入缓存区,然后休眠三秒后,直到程序运行结束才将hello world打印到显示器。

\r和\n

\r: 回车,使光标回到本行行首。
\n: 换行,使光标下移一格。

键盘上的enter就等于\n + \r;

\r 是让光标回到本行行首,如果我们向显示器上写了一个数,然后再写一个数,不就相当于将前面一个数字覆盖了吗?

而且,不使用\n 如何将缓存区中的数据打印出来?

---》用fflush函数,该函数可以刷新缓冲区。

首先来看一个倒计时:

进度条代码及效果展示


相关推荐
dqsh0627 分钟前
树莓派5+Ubuntu24.04 LTS CH348 / CH9344 驱动安装 保姆级教程
linux·c语言·单片机·嵌入式硬件·iot
menge23332 小时前
Linux DNS域名解析服务器练习
linux·运维·服务器
wsad05322 小时前
CentOS 7 更换腾讯云 yum 源及 EPEL 源
linux·centos·腾讯云
wdfk_prog2 小时前
[Linux]学习笔记系列 -- [kernel]kallsyms
linux·笔记·学习
emiya_saber3 小时前
Linux 进程调度管理
linux·运维·服务器
不脱发的程序猿3 小时前
嵌入式Linux:线程同步(读写锁)
linux·嵌入式
yangzhi_emo3 小时前
配置dns主从服务
linux·运维·服务器
SongYuLong的博客5 小时前
Linux开源代码汇总
linux·运维·服务器
JiMoKuangXiangQu5 小时前
Linux 内存管理 (5):buddy 内存分配简要流程
linux·内存管理·buddy 分配器
铭哥的编程日记5 小时前
【Linux网络】应用层协议HTTP
linux·运维·http