【Linux篇】第一个系统程序 - 进度条
文章目录
- 1.回车与换行
- 2.行缓冲区
- 3.倒计时程序
- 4.进度条
1.回车与换行
- 回车的概念: 回到当前行的最开始
\r
- 换行的概念: 换到当前行的下一行
\n
2.行缓冲区
- 当我们运行下面这段程序时,我们会发现屏幕上首先会打印出
hello world!
,再过两秒后程序结束。
- 当我们把
\n
去掉时,我们运行程序时会发现,等待两秒后屏幕上才会打印出hello world!
,那么在sleep
执行的期间,我们的hello world!
保存在哪里呢?
答案: 存在一个叫缓冲区的地方,存在缓冲区那么就会有缓冲区刷新策略!
显示器的刷新策略: 行刷新,如果存在\n
,遇到\n
就会立即刷新;如果没有\n
,该字符串不做刷新,要么程序结束自动刷新,要么我们强制刷新。
-
如果我们想让它强制刷新呢?
-
man fflush
我们c提供了对应的fflush
策略,可以直接强制刷新。在我们的c语言当中,我们在printf打印的时候,默认会打开三个文件的输入输出流,分别是:
我们想要字符串立即刷新,只需在字符串后添加fflush(stdout)
就行
直接使用该文件流,把字符串立即刷新。
3.倒计时程序
我们首先来编写一个9-0的倒计时
当我们令cnt=10时运行程序就会发现,显示的是90,80,70…,所以我们就要对程序进一步升级。
%-2d
表示居左对齐,输出占两个字符的位置,如果字符不足两个,就用空格来代替。
4.进度条
-
展示进度条的基本功能代码
-
进度条Pro版本
main.c
代码
process.h
代码
process.c
代码
- 进度条Pro Max版本
main.c
代码
procss.h
代码
process.c
代码
今天的内容就分享到这里,如果这篇文章对你有帮助,记得点赞,评论+收藏 ,最后别忘了关注作者,作者将带领你探索更多关于Liunx方面的问题。