【Linux】简单的小程序:进度条

news2025/1/18 17:06:17

在学习进度条之前,需要学一点预备知识。

1. 预备知识

  1. 回车换行

现在的换行符(\n)其实就是回车式换行符,另起一行,光标指向最新一行的开头。回车符(\r)是光标指向这一行的开头。
在这里插入图片描述

  1. 缓冲区

(1)先上例子
在这里插入图片描述
运行后发现,打印hello world后停顿了两秒,再出现命令行。
如果没有打印换行符,发现是先停顿两秒再打印hello world,且命令行没有换行。
在这里插入图片描述
C语言执行代码是从上往下的,不可能先睡眠两秒,再打印hello world。在sleep2秒期间,hello world一定被保存起来了!保存在缓冲区(就是由C语言维护的一段内存)。当程序结束后,缓冲区的数据才刷新出来。
(2)如果我要强制刷新,该怎么做?
在这里插入图片描述
fflush用来刷新缓冲区,stdout是显示器(标准输出流)。

  1. 倒计时

在这里插入图片描述

/r回到最左位置,会覆盖原先的值。所以如果num是两位数就会出现这种情况。
在这里插入图片描述
10的0没有被覆盖,所以如果倒计时是两位数的话,每个数字得占两个位置,且向左对齐。
在这里插入图片描述


2. 进度条

版本1
在这里插入图片描述
版本2
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
不会做动图..

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/967294.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

springboot封装查询快递物流

目录 一、ApiClient代码解读二、ApiService代码解读三、HomeController代码解读四、整体代码五、结果展示 一、ApiClient代码解读 这是一个简单的Spring Boot的RestTemplate客户端,用于执行HTTP请求。 首先,这个类被Component注解标记,这意味…

销量蹭蹭上涨!亚马逊上这几款宿舍神器火爆了!

一、BedShelfie床边置物架 每年返校季,收纳工具都是最畅销的产品。在亚马逊床头柜热销榜单中,这款产品位居第二。过去一个月里,有1000多名用户购买了这件产品。 二、U Brands磁性干擦日历板 目前,亚马逊上这款产品已经卖到断货。…

ubuntu下Anaconda安装与使用教程

前言 好久没用anaconda了,还记得之前用anaconda的欢乐时光。pytorch和paddlepaddle(飞浆),怀念,可生活(换了ubuntu系统之后)教会了我残忍(可能很难有机会再用windows的anaconda了)。找个时间&a…

C语言:动态内存(一篇拿捏动态内存!)

目录 学习目标: 为什么存在动态内存分配 动态内存函数: 1. malloc 和 free 2. calloc 3. realloc 常见的动态内存错误: 1. 对NULL指针的解引用操作 2. 对动态开辟空间的越界访问 3. 对非动态开辟内存使用free释放 4. 使用free释…

代码随想录—力扣算法题:24两两交换链表中的节点.Java版(示例代码与导图详解)

版本说明 当前版本号[20230903]。 版本修改说明20230903初版 24. 两两交换链表中的节点 力扣题目链接 更多内容可点击此处跳转到代码随想录,看原版文件 给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。 你不能只是单纯的改变…

淘宝/天猫获得淘宝商品详情 API 接口文档

item_get-获得淘宝商品详情 API测试工具 注册开通 taobao.item_get 公共参数 名称类型必须描述keyString是调用key(必须以GET方式拼接在URL中)secretString是调用密钥api_nameString是API接口名称(包括在请求地址中)[item_sear…

Google colab部署VITS——零门槛快速克隆任意角色声音

目录 序言 查看GPU配置 复制代码库并安装运行环境 选择预训练模型 上传视频链接(单个不应长于20分钟) 自动处理所有上传的数据 训练质量相关:实验发现目前使用CJ模型勾选ADD_AUXILIARY,对于中/日均能训练出最好的效果&#x…

【数据结构】 二叉树面试题讲解->叁

文章目录 🌏引言🌲[根据二叉树创建字符串](https://leetcode.cn/problems/construct-string-from-binary-tree/submissions/)🐱‍👤题目描述:🐱‍🐉示例:📌示例一&#x…

1921. 消灭怪物的最大数量

文章目录 Tag题目来源题目解读解题思路方法一:贪心排序 复杂度分析写在最后 Tag 【贪心】【排序】【数组】 题目来源 1921. 消灭怪物的最大数量 题目解读 dist[i] 是第 i 个怪兽与城市的初始距离,speed[i] 是第 i 个怪兽的移动距离。怪兽的目的是攻击…

Mybatis学习|注解开发、lombok

1.使用注解开发 无需再编写相应的Mapper.xml文件,直接将sql用注解的形式写在Mapper接口的对应方法上即可。 然后因为没有xml文件,所以要在mybatis-config.xml核心配置文件中注册这个Mapper接口,而不用去注册之前的Mapper.xml,这里其实如果用…

04_22 vma(进程下的每个虚拟内存区域查看)对象实战

前言 vma不太懂的可以往前翻 03_008内存映射原理_虚拟内存区域vm_area_struct详解,和mmap系统钓调用及物理内存结构体完全分析 vam 虚拟内存区域 每个进程下有多个vma 这次是查看每个vma的起始地址 结束地址和大小使用 1.进程在用户空间调用mmap也就是上面那个函数。 2.在当前…

一个集成的BurpSuite漏洞探测插件1.2

4、DNSLog查询漏报 注:扫描结束后才会在BurpSuite的Target、Dashboard模块显示高危漏洞,进程扫描中无法进行同步,但可以在插件中查看(涉及到DoPassive方法问题)。

[足式机器人]Part3 变分法Ch01-2 数学预备知识——【读书笔记】

本文仅供学习使用 本文参考: 《变分法基础-第三版》老大中 《变分学讲义》张恭庆 《Calculus of Variations of Optimal Control Theory》-变分法和最优控制论-Daneil Liberzon Ch01-2 数学基础-预备知识1 1.3.2 向量场的通量和散度1.3.3 高斯定理与格林公式 1.3.2 …

js:创建一个基于vite 的React项目

相关文档 Vite 官方中文文档React 中文文档React RouterRedux 中文文档Ant Design 5.0Awesome React 创建vite react项目 pnpm create vite react-app --template react# 根据提示,执行命令 cd react-app pnpm install pnpm run dev项目结构 $ tree -L 1 . ├─…

java基础-----第九篇

系列文章目录 文章目录 系列文章目录前言一、GC如何判断对象可以被回收前言 一、GC如何判断对象可以被回收 引用计数法:每个对象有一个引用计数属性,新增一个引用时计数加1,引用释放时计数减1,计 数为0时可以回收, 可达性分析法:从 GC Roots 开始向下搜索,搜索所走过的…

SourceTree 使用技巧

参考资料 SourceTree使用教程(一)—克隆、提交、推送SourceTree的软合并、混合合并、强合并区别SourceTree 合并分支上的多个提交,一次性合并分支的多次提交至另一分支,主分支前进时的合并冲突解决 目录 一. 基础设置1.1 用户信息…

mall :hutool项目源码解析

文章目录 一、mall开源项目1.1 来源1.2 项目转移1.3 项目克隆 二、Hutool工具类库2.1 Hutool 简介 三、源码解析3.1 集成与配置3.1.1 导入依赖3.1.2 添加配置 3.2 核心工具类3.2.1 AnnotationUtil使用:注解工具类3.2.2 BeanUtil使用:JavaBean的工具类3.2…

精品基于SpringCloud实现的电影院购票系统设计-微服务-分布式

《[含文档PPT源码等]精品基于SpringCloud实现的电影院购票系统设计的设计与实现-微服务-分布式》该项目含有源码、文档、PPT、配套开发软件、软件安装教程、项目发布教程等 软件开发环境及开发工具: 开发语言:Java 框架:springcloud JDK版…

AI:06-基于OpenCV的二维码识别技术的研究

二维码作为一种广泛应用于信息传递和识别的技术,具有识别速度快、容错率高等优点。本文探讨如何利用OpenCV库实现二维码的快速、准确识别,通过多处代码实例展示技术深度。 二维码作为一种矩阵型的条码,广泛应用于各个领域,如商品追溯、移动支付、活动签到等。二维码的快速…

【力扣】416. 分割等和子集 <动态规划、回溯>

【力扣】416. 分割等和子集 给你一个 只包含正整数的非空数组 nums 。请你判断是否可以将这个数组分割成两个子集,使得两个子集的元素和相等。 示例 1: 输入:nums [1,5,11,5] 输出:true 解释:数组可以分割成 [1, 5,…