printf \033 显示
1. 格式
\033[显示方式;前景色;背景色m
\033[0m 默认
\033[1;32;40m 绿色
\033[1;31;40m 红色
1.1 显示方式
- 0(默认值)
- 1(高亮)
- 22(非粗体)
- 4(下划线)
- 24(非下划线)
- 5(闪烁)
- 25(非闪烁)
- 7(反显)
- 27(非反显)
1.2 前景色
- 30(黑色)
- 31(红色)
- 32(绿色)
- 33(黄色)
- 34(蓝色)
- 35(洋红)
- 36(青色)
- 37(白色)
1.3 背景色
- 40(黑色)
- 41(红色)
- 42(绿色)
- 43(黄色)
- 44(蓝色)
- 45(洋红)
- 46(青色)
- 47(白色)
2. 模拟进度条显示
#include <stdio.h>
#include <unistd.h>
int main()
{
int i = 0;
char bar[102]={'\0'};
char* lable="|/-\\";
while ( i < 100)
{
bar[i++]='>';
printf("\033[1;33;40m[%-100s] \033[1;31;40m[%d%%][%c] \033[0m\r",bar,i,lable[i%4]);
fflush(stdout);
usleep(100000);
}
printf("\n");
return 0;
}
$ ./a.out
[>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>] [100%][|]