我们平常在下载软件或者安装软件时都会看到进度条,下面我们分析一下,并实现一个简易的进度条

1、首先我们用[]固定在左右两边,中间预留空间,然后用'='进行填充在这里我们用"="表示1%,通过增加字符

来保证进度的增加。printf("[%-100s]\r",str); 格式化输出。'-'表示左对齐 100表示列宽,'\r'表示回车,即每

次打印完使光标回到行首在这里需要解释一下'\r'和'\n'这两个概念

回车:'\r',表示回到当前行的行首
换行:'\n',表示光标进入下一行
2、加睡眠时间,如果不加睡眠时间,结果一下就全打印出来,那就不是进度条了。
linux下sleep时间单位为秒,这样的话感觉间隔时间有点长,于是又有了usleep函数
我们可以通过man 来查看这连个函数:

Android培训,安卓培训,手机开发培训,移动开发培训,云培训培训

3、在观察程序输出结果是会发现它是一段一段显示,这和我们平常见到的
进度条不一样。究其原因,发现是printf()的原因,,printf是先将要输出的内容

网友评论