在Linux下实现进度条程序,通过makefile进行编译.doc
《在Linux下实现进度条程序,通过makefile进行编译.doc》由会员分享,可在线阅读,更多相关《在Linux下实现进度条程序,通过makefile进行编译.doc(6页珍藏版)》请在三一文库上搜索。
1、在Linux下实现进度条程序,通过makefile进行编译1. 在Linux下实现进度条程序。 通过makefile进行编译。 建议自主完成一个彩色的进度条。写Makefile文件的原因:Makefile文件的作用是命令行编译链接命令nmake使用的文件。它以人本方式规定了make要编译哪些文件,生成哪些文件,要链接哪些文件,生成的.exe文件的名称等。思路:1. 进度条由0%-100%,在字符数组中输出一串字符时,最后以”0”结束的,所以需要一个大小为102的数组,加载橙红的数据用”=”表示。2. 进度条会出现一个区间,然后在里面进行加载,故先用”“”表示加载的区间。3. 定义一个rate标
2、识进度。没进行一次加一,直到100停止4. 在进行回车前,需要进行刷新5. 在加载进度时,通过sleep()6. 对于加载中旋转的小圈通过”-|/”顺时针进行。主要代码如下#include #include int main() int rate =0; char str102=0; char * sta=“-|/”; while(rate=100) strrate=“-”; printf(“%-100s,%d%,%cr”,str,rate,starate%4); rate+; ffush(stdout); usleep(100000); retunr 0; Linux下程序编写完成之后,在进
3、行编译链接生成可执行文件方式1 gcc test.c -o test。/a.out方式2 编译makefile文件test:test。o gcc -o test -o test.o test.o:test.s gcc -C test.i -o test.o test.s:test.i gcc -S test.i -p test.i test.i:test.c gcc -E test.c -o test.i .PHONY:clean clean: rm -f test.o rm -f test.s rm -f test.i rm -f test 1.回车(r)和换行(n)回车和换行是两个不同的概
4、念,回车:表示回到当前行的行首。换行:表示光标进入当前行的下一行在Linux中,n会进行回车+换行操作,而/r不会进行回车操作,只会被当做控制字符处理。在Windows下,每行的结尾是nr;在Linux下,每行的结尾是n。所以,Linux下打开Windows的文件,每行会多出一个符号;而在Windows下打开Linux文件,所有的内容变成一行。2.缓冲区#(1)什么是缓冲区?缓冲区又称为缓存,它是内存空间的一部分,在内存空间中预留了一定的存储空间,这些空间用来缓冲输入或输出的书库,这部分预留的空间就叫做缓冲区。缓冲区根据其对应的是输入涉笔还是输出设备,分为输入缓冲区和输出缓冲区。(2)为什么要
5、引入缓冲区比如我们从磁盘里取信息,我们先把读出的数据放在缓冲区,计算机再直接从缓冲区中取数据,等缓冲区的数据取完后再去磁盘中读取,这样就可以减少磁盘的读写次数,再加上计算机对缓冲区的操作大大快于对磁盘的操作,故应用缓冲区可大大提高计算机的运行速度。又比如,我们使用打印机打印文档,由于打印机的打印速度相对较慢,我们先把文档输出到打印机相应的缓冲区,打印机再自行逐步打印,这时我们的CPU可以处理别的事情。现在您基本明白了吧,缓冲区就是一块内存区,它用在输入输出设备和CPU之间,用来缓存数据。它使得低速的输入输出设备和高速的CPU能够协调工作,避免低速的输入输出设备占用CPU,解放出CPU,使其能够
6、高效率工作。(3)缓冲区的类型缓冲区 分为三种类型:全缓冲、行缓冲和不带缓冲。a、全缓冲在这种情况下,当填满标准I/O缓存后才进行实际I/O操作。全缓冲的典型代表是对磁盘文件的读写。b、行缓冲在这种情况下,当在输入和输出中遇到换行符时,执行真正的I/O操作。这时,我们输入的字符先存放在缓冲区,等按下回车键换行时才进行实际的I/O操作。典型代表是键盘输入数据。c、不带缓冲也就是不进行缓冲,标准出错情况stderr是典型代表,这使得出错信息可以直接尽快地显示出来。(4)缓冲区的刷新 下列情况会引发缓冲区的刷新: 1、缓冲区满时; 2、执行flush语句; 3、执行endl语句; 4、关闭文件。 可
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Linux 实现 进度条 程序 通过 makefile 进行 编译
链接地址:https://www.31doc.com/p-3408175.html