C语言实现彩色进度条---linux环境下编译

彩色进度条

C语言实现彩色进度条—linux环境下编译

代码实现:

#include<stdio.h>
#include<unistd.h>
#define NONE                "\033[m"   
#define RED                 "\033[0;32;31m"   
#define LIGHT_RED        "\033[1;31m"   
#define GREEN             "\033[0;32;32m"   
#define LIGHT_GREEN            "\033[1;32m"   
#define BLUE                     "\033[0;32;34m"   
#define LIGHT_BLUE              "\033[1;34m"   
#define DARY_GRAY             "\033[1;30m"   
#define CYAN                     "\033[0;36m"   
#define LIGHT_CYAN             "\033[1;36m"   
#define PURPLE                   "\033[0;35m"   
#define LIGHT_PURPLE           "\033[1;35m"   
#define BROWN                  "\033[0;33m"   
#define YELLOW                 "\033[1;33m"   
#define LIGHT_GRAY             "\033[0;37m"   
#define WHITE                "\033[1;37m" 
int main()
{
  char buf[101] = {0};
  size_t i = 0;
  const char* laber = "-/|\\";
  for(i = 0;i<50;++i)
  {
     int c = i%5;  
     switch(c)
     {  
       case 0:printf(RED);  
           break;  
       case 1:printf(GREEN);                                                                                
           break;
       case 2:printf(BLUE);  
           break;  
       case 3:printf(YELLOW);                                                                               
           break;  
       case 4:printf(BROWN);  
           break;  
     }  
     buf[i] = '#';
     printf("[%lu%%][%c][%-50s]\r",i*2,laber[i%4],buf);
     fflush(stdout);
     usleep(100000);
  }
  printf("\n");
  printf("\033[0m"); 
  return 0;
}

linux下运行结果:

这里写图片描述

猜你喜欢

转载自blog.csdn.net/zl_8577/article/details/78764320