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

行缓冲区的概念

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

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

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

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

\r和\n

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

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

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

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

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

首先来看一个倒计时:

进度条代码及效果展示


相关推荐
安顾里1 小时前
Linux命令-iostat
linux·运维·服务器
100编程朱老师2 小时前
面试:什么叫Linux多路复用 ?
linux·运维·服务器
miracletiger2 小时前
uv 新的包管理工具总结
linux·人工智能·python
enyp802 小时前
麒麟系统(基于Ubuntu)上使用Qt编译时遇到“type_traits文件未找到”的错误
linux·qt·ubuntu
struggle20252 小时前
LinuxAgent开源程序是一款智能运维助手,通过接入 DeepSeek API 实现对 Linux 终端的自然语言控制,帮助用户更高效地进行系统运维工作
linux·运维·服务器·人工智能·自动化·deepseek
无敌小茶3 小时前
Linux学习笔记之动静态库
linux·笔记
程序员JerrySUN4 小时前
驱动开发硬核特训 · Day 21(上篇) 抽象理解 Linux 子系统:内核工程师的视角
java·linux·驱动开发
雨声不在5 小时前
debian切换用户
linux·服务器·debian
不知名。。。。。。。。5 小时前
Linux—— 版本控制器Git
linux·运维·git
内网渗透5 小时前
OpenWrt 与 Docker:打造轻量级容器化应用平台技术分享
linux·docker·容器·openwrt·软路由