当前位置: 首页 > article >正文

【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.进度条

  1. 展示进度条的基本功能代码
    在这里插入图片描述

  2. 进度条Pro版本

  • main.c代码
    在这里插入图片描述
  • process.h代码
    在这里插入图片描述
  • process.c代码
    在这里插入图片描述
  1. 进度条Pro Max版本
  • main.c代码
    在这里插入图片描述
    在这里插入图片描述
  • procss.h代码
    在这里插入图片描述
  • process.c代码
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

今天的内容就分享到这里,如果这篇文章对你有帮助,记得点赞,评论+收藏 ,最后别忘了关注作者,作者将带领你探索更多关于Liunx方面的问题。


http://www.kler.cn/a/571419.html

相关文章:

  • 【Laplacian边缘检测详解】
  • Compose Multiplatform开发记录之文件选择器封装
  • 三方库总结
  • 【Linux】【网络】UDP打洞-->不同子网下的客户端和服务器通信(成功版)
  • 鸿蒙与DeepSeek深度整合:构建下一代智能操作系统生态
  • 【leetcode hot 100 189】轮转数组
  • 从零开始学习Slam--数学概念
  • 《Operating System Concepts》阅读笔记:p180-p187
  • 蓝桥杯 2020 国赛 阶乘约数
  • 自学微信小程序的第十天
  • [liorf_localization_imuPreintegration-2] process has died
  • python全栈-Linux基础
  • 【Linux】进程信号——信号保存和信号捕捉
  • 【大模型】什么是蒸馏版大模型
  • 【零基础到精通Java合集】第二十三集:G1收集器深度解析
  • 鸿蒙5.0实战案例:基于ArkUI的透明页面效果
  • BambuStudio学习笔记:GCode 类
  • 15款单色颗粒渐变扭曲抽象艺术背景图AI/PSD格式设计素材 Abstract Grainy Gradient Background
  • CubeMX创建STM32F407工程
  • DeepSeek未来发展趋势:开创智能时代的新风口