Linux 的 bash 命令行解释器会输出有颜色的字体
那怎么做到的呢?
print( "\033[字背景颜色;字体颜色m字符串\033[0m");
下面给出一些背景颜色和字体颜色 具体搭配就看你的喽
字背景颜色范围:40----49
40:黑
41:深红
42:绿
43:黄色
44:蓝色
45:紫色
46:深绿
47:白色
字颜色:30-----------39
30:黑
31:红
32:绿
33:黄
34:蓝色
35:紫色
36:深绿
37:白色
尝试写一个带颜色的进度条
// 尝试写一个进度条程序
# include <stdio.h>
# include <unistd.h>
#define N 32
void process_bar(void);
int main(void)
{
process_bar();
return 0;
}
void process_bar(void)
{
char buf[N] = {0};
int i = 0;
for(i = 0; i < N; ++i)
{
buf[i] = '#';
if((float)i / N <= 0.15)
{ // 进度小于 15% -- 红色
printf("\33[31m [%3.0f%%][%s]\r\33[0m", ((float)i/N)*100, buf);
}
else if((float)i / N <= 0.8)
{ // 进度 大于 15% 小于 80% -- 黄色
printf("\33[33m [%3.0f%%][%s]\r\33[0m", ((float)i/N)*100, buf);
}
else
{ // 进度 大于 80% 绿色
printf("\33[32m [%3.0f%%][%s]\r\33[0m", ((float)i/N)*100, buf);
}
fflush(stdout); // 刷新输出缓冲区
usleep(500 * 100); // 需包含头文件 <unistd.h> 单位是 微秒( 1秒 = 10^6 微秒 )
}
printf("\n");
}
看到这了,你怎么不自己试试呢?