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

行缓冲区的概念

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

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

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

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

\r和\n

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

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

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

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

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

首先来看一个倒计时:

进度条代码及效果展示


相关推荐
peihexian8 分钟前
我也试试qemu虚拟化
linux·运维
阳光九叶草LXGZXJ8 分钟前
达梦数据库-学习-57-读写数据页超时告警排查(page[x,x,xxxxxx] disk write uses)-DSC集群版
linux·运维·服务器·数据库·sql·学习
lolo大魔王22 分钟前
Linux监测磁盘空间
linux·运维·服务器
不仙52022 分钟前
Rocky Linux 8.10 TigerVNC 安装配置指南
linux·服务器·网络
浮生若城23 分钟前
Linux基础I/O(1)
linux·运维·服务器
阳光九叶草LXGZXJ28 分钟前
达梦数据库-堆栈看问题-01-asmapi_asm_extent_load
linux·运维·数据库·sql·学习
Ujimatsu28 分钟前
虚拟机安装openSUSE 16.0及其常用软件(2026.5)
linux·运维·服务器
minji...36 分钟前
Linux 网络基础之网络IP层(十)IP 协议,网段划分,IP地址相关问题
linux·运维·服务器·网络·tcp/ip·智能路由器·php
枳实-叶1 小时前
【Linux驱动开发】第10天:设备树零基础入门——DTS/DTB/DTC全解+编译流程
linux·运维·驱动开发
枳实-叶1 小时前
【Linux驱动开发】第11天:设备树(Device Tree)超详细全解:从诞生背景到工作原理
linux·运维·驱动开发