linux----进度条程序
2016-06-06 10:29
351 查看
自己编写的第一个linux程序---进度条。
这个程序要实现的是像进度条一样,每秒都会出现一个*,直到百分之百。并且在后面也会用百分数表示当前进度,而且有一根直线一直在转,表示当前进度正在运行。
如下图:
![](http://s2.51cto.com/wyfs02/M02/82/30/wKioL1dOPwKxvgZ5AAINjJzcvmU678.png)
前面的竖线就是表示当前进度条正在执行的状态。
后面有百分数表示当前的进度。
这个程序我们用Make实现。
Make-------
在linux环境下,只需要一个Make就可以执行编译,链接,执行等多步,这个就为我们节省了大量的时间。不过这需要我们投入一些时间去完成Makefile文件的编写。Make是一个工具,它解释Makefile文件中的指令。在Makefile文件中,描述了整个工程的编译顺序,编译规则等。表明了他们之间的依赖关系,依赖对象。
下图就是Makefile文件的内容。
![](http://s2.51cto.com/wyfs02/M02/82/32/wKiom1dOSTKhPRlLAAB6SvQvwug365.png)
Makefile文件编写好之后,我们只需要在命令行输入一个make ,就可以一步完成文件的编译,链接。
运行完程序以后,我们需要进行清理工作。同样,只需要一条make clean 命令就可以完成。
![](http://s5.51cto.com/wyfs02/M01/82/33/wKiom1dOStiB1iLzAAFj7GqTEXw583.png)
如果不想显示make的内容,在每条命令前加上@符号就好了。
接下来我们说一说这个进度条程序。
先把程序给大家。
![](http://s4.51cto.com/wyfs02/M00/82/31/wKioL1dOSAfTDKkXAAIgCKbJ62A786.png)
先分析一下程序:
[ %-100s ] :-100是左对齐的意思。
[ %d%% ]:第一个%是输出%,然后%d,再%是对第二个%的转义。
\r:是回车。意思是每次光标会回到行首。\n:是换行,意思到下一行 要注意二者的区别。
buff [ i%4 ]:这样就会间断输出buff里面的内容,视觉上有一个动态的图画。
fflush( stdout):刷新输出缓冲区。它可以即时的将缓冲区的内容打印到屏幕上。
接下来就是看我们的运行结果了。。。。
![](http://s3.51cto.com/wyfs02/M01/82/31/wKioL1dOSfKz72A_AAINjJzcvmU034.png)
这个程序要实现的是像进度条一样,每秒都会出现一个*,直到百分之百。并且在后面也会用百分数表示当前进度,而且有一根直线一直在转,表示当前进度正在运行。
如下图:
![](http://s2.51cto.com/wyfs02/M02/82/30/wKioL1dOPwKxvgZ5AAINjJzcvmU678.png)
前面的竖线就是表示当前进度条正在执行的状态。
后面有百分数表示当前的进度。
这个程序我们用Make实现。
Make-------
在linux环境下,只需要一个Make就可以执行编译,链接,执行等多步,这个就为我们节省了大量的时间。不过这需要我们投入一些时间去完成Makefile文件的编写。Make是一个工具,它解释Makefile文件中的指令。在Makefile文件中,描述了整个工程的编译顺序,编译规则等。表明了他们之间的依赖关系,依赖对象。
下图就是Makefile文件的内容。
![](http://s2.51cto.com/wyfs02/M02/82/32/wKiom1dOSTKhPRlLAAB6SvQvwug365.png)
Makefile文件编写好之后,我们只需要在命令行输入一个make ,就可以一步完成文件的编译,链接。
运行完程序以后,我们需要进行清理工作。同样,只需要一条make clean 命令就可以完成。
![](http://s5.51cto.com/wyfs02/M01/82/33/wKiom1dOStiB1iLzAAFj7GqTEXw583.png)
如果不想显示make的内容,在每条命令前加上@符号就好了。
接下来我们说一说这个进度条程序。
先把程序给大家。
![](http://s4.51cto.com/wyfs02/M00/82/31/wKioL1dOSAfTDKkXAAIgCKbJ62A786.png)
先分析一下程序:
[ %-100s ] :-100是左对齐的意思。
[ %d%% ]:第一个%是输出%,然后%d,再%是对第二个%的转义。
\r:是回车。意思是每次光标会回到行首。\n:是换行,意思到下一行 要注意二者的区别。
buff [ i%4 ]:这样就会间断输出buff里面的内容,视觉上有一个动态的图画。
fflush( stdout):刷新输出缓冲区。它可以即时的将缓冲区的内容打印到屏幕上。
接下来就是看我们的运行结果了。。。。
![](http://s3.51cto.com/wyfs02/M01/82/31/wKioL1dOSfKz72A_AAINjJzcvmU034.png)
相关文章推荐
- Linux(三)----find
- Linux(二)-----常见指令(1)
- Linux(一)
- LINUX守护进程daemon
- Linux 本地文件系统挂载的目录扩容
- CentOS 6.3服务器开机启动服务及自动联网设置方法
- 强悍的 Linux —— 系统文件及其作用
- linux 每天一个命令(cd) 只需要1分钟
- 嵌入式Linux裸机开发(二)——S5PV210启动过程分析
- 常用vi命令总结
- Linux应用层直接操作GPIO
- Linux:永久修改网卡的MAC地址
- Linux 内核list_head 学习(一)
- Linux 寻找安装路径
- linux基础知识(一)
- 快速搭建Ubuntu更新源服务器
- Linux下面/usr/local和opt目录
- Linux 进程优先级查看及调整
- GoDaddy Linux主机支持机房的更换
- linux系统安装mysql