Printf不一样的玩法
❝在使用linux终端命令的时候,我们可以看到像more命令,它的显示方式与一般的字符串不同,是用了反显。同样,linux C下printf还有很多其他不常见的格式化输出形式。本文主要为你盘点这些形式。
❞
先看下效果:
代码:
#include<stdio.h>
int main()
{
printf("\033[1;33m \t\t\tprintf不一样的玩法. \033[0m \n"); //
printf("\033[1;33m \t 字体颜色:\n");
printf("\033[0m none:\n");
printf("\033[0;30m back:\n");
printf("\033[1;30m dark_back:\n");
printf("\033[0;34m blue:\n");
printf("\033[1;34m light_blue:\n");
printf("\033[0;32m green:\n");
printf("\033[1;32m light_green:\n");
printf("\033[0;36m cyan:\n");
printf("\033[1;36m light_scan:\n");
printf("\033[0;31m red:\n");
printf("\033[1;31m light_read:\n");
printf("\033[0;35m purple:\n");
printf("\033[1;35m light_purple:\n");
printf("\033[0;33m brown:\n");
printf("\033[1;33m yellow:\n");
printf("\033[0;37m light_yellow:\n");
printf("\033[1;37m white:\n");
printf("\033[1;33m \t 背景颜色:\n");
printf("\033[0m none:\n");
printf("\033[0;40m back:\n");
printf("\033[0;44m blue:\n");
printf("\033[0;42m green:\n");
printf("\033[0;46m cyan:\n");
printf("\033[0;41m red:\n");
printf("\033[0;45m purple:\n");
printf("\033[0;43m brown:\n");
printf("\033[0;47m light_yellow:\033[0m\n");
printf("\033[1;33m \t 背景字体颜色:\n");
printf("\033[47;31mhello world\033[?25l");
//47是字背景颜色, 31是字体的颜色, hello world是字符串. 后面的\033[?25l是控制码:用来隐藏光标.
getchar();
return0;
}
颜色代码:
字背景颜色范围: 40--49 字颜色: 30--39
40: 黑 30: 黑
41: 红 31: 红
42: 绿 32: 绿
43: 黄 33: 黄
44: 蓝 34: 蓝
45: 紫 35: 紫
46: 深绿 36: 深绿
47: 白色 37: 白色
ANSI控制码:
输出特效格式控制:
\033[0m 关闭所有属性
\033[1m 设置高亮度
\03[4m 下划线
\033[5m 闪烁
\033[7m 反显
\033[8m 消隐
\033[30m -- \033[37m 设置前景色
\033[40m -- \033[47m 设置背景色
光标位置等的格式控制:
\033[nA 光标上移n行
\03[nB 光标下移n行
\033[nC 光标右移n行
\033[nD 光标左移n行
\033[y;xH设置光标位置
\033[2J 清屏
\033[K 清除从光标到行尾的内容
\033[s 保存光标位置
\033[u 恢复光标位置
\033[?25l 隐藏光标
\33[?25h 显示光标
示例颜色如下:
颜色如下:
none = "\033[0m"
black = "\033[0;30m"
dark_gray = "\033[1;30m"
blue = "\033[0;34m"
light_blue = "\033[1;34m"
green = "\033[0;32m"
light_green -= "\033[1;32m"
cyan = "\033[0;36m"
light_cyan = "\033[1;36m"
red = "\033[0;31m"
light_red = "\033[1;31m"
purple = "\033[0;35m"
light_purple = "\033[1;35m"
brown = "\033[0;33m"
yellow = "\033[1;33m"
light_gray = "\033[0;37m"
white = "\033[1;37m"