Linux用make指令编译进度条程序

本文实例为大家分享了Linux下写一个简单进度条的具体代码,供大家参考,具体内容如下

首先建立一个新的文件,touch progress_bar.c 执行该vim progress_bar.c命令,写进度条的程序。写进一个进度条程序:

  #include<stdio.h>  #include<unistd.h>  #include<string.h>    void progress()  {   int i = 0;   char bar[102];   memset(bar,0,102*sizeof(char));   const char* lable="|/-";   while(i <= 100)   {    bar[i] = '#';     printf("[%-101s] [%d%%] [%c]",bar,i,lable[i%4]);    fflush(stdout);    usleep(100000);    i++;   }   printf("n");  }    int main()  {   progress();   return 0;  }    

如图:

该代码中需要注意的小细节:

1. const char* lable=”|/-”; 直接输入一个会被系统认为是转义,所以要输入
2. printf(“[%-101s] [%d%%] [%c]”,bar,i,lable[i%4]);这里的%%同上,防止转义。rate%4防止溢出
3. fflush(stdout); 参数为标准输出流
4. 因为sleep默认单位为秒,不便于测试,usleep默认单位为微秒

最后,进行调试,建立一个mymakefile文件,touch mymakefile对该文件进行编辑vim mymakefile。

  myprogress_bar:progress_bar.c    g++ -o myprogress_bar progress_bar.c  :PHONY clean    clean:    rm -f myprogress_bar    

如图所示: 

然后执行make命令,对progress_bar.c文件进行编译,make -f mymakefile,即生成myprogress_bar文件,用./myprogress_bar对他进行执行。若想重新进行编译,则需要make -f mymakefile clean指令,先对文件progress_bar进行清除,再用make进行编译。

如图:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

参与评论