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

行缓冲区的概念

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

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

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

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

\r和\n

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

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

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

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

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

首先来看一个倒计时:

进度条代码及效果展示


相关推荐
软件测试很重要5 分钟前
UOS20系统安装与 SSH/XRDP 远程访问功能配置指南
linux·运维·ssh
GanGuaGua1 小时前
Linux系统:线程的互斥和安全
linux·运维·服务器·c语言·c++·安全
lsnm1 小时前
【LINUX网络】IP——网络层
linux·服务器·网络·c++·网络协议·tcp/ip
不掰手腕2 小时前
在UnionTech OS Server 20 (统信UOS服务器版) 上离线安装PostgreSQL (pgsql) 数据库
linux·数据库·postgresql
Lynnxiaowen2 小时前
今天继续昨天的正则表达式进行学习
linux·运维·学习·正则表达式·云计算·bash
努力学习的小廉2 小时前
深入了解linux系统—— POSIX信号量
linux·运维·服务器
刘一说2 小时前
CentOS部署ELK Stack完整指南
linux·elk·centos
从零开始的ops生活2 小时前
【Day 50 】Linux-nginx反向代理与负载均衡
linux·nginx
IT成长日记3 小时前
【Linux基础】Linux系统配置IP详解:从入门到精通
linux·运维·tcp/ip·ip地址配置
夜无霄3 小时前
安卓逆向(一)Ubuntu环境配置
linux·运维·爬虫·ubuntu