网站收录的页面被k出来,网站域名组成,wordpress 获取相关文章,口碑最好的网页游戏我们不一样①
从hello world开始
别人的hello world
我们的hello world
代码展示
#include stdio.h
int main(){printf(\033[31mhello world\033[0m); getchar();return 0;
} 此处用了 ANSI转义序列 ANSI转义序列是一种带内信号的转义序列标准stdio.h
int main(){printf(\033[31mhello world\033[0m); getchar();return 0;
} 此处用了 ANSI转义序列 ANSI转义序列是一种带内信号的转义序列标准用于控制视频文本终端上的光标位置、颜色和其他选项。在文本中嵌入确定的字节序列大部分以ESC转义字符和[字符\033[开始终端会把这些字节序列解释为相应的指令而不是普通的字符编码。 ANSI转义序列
字符渲染序列(SGR) 字符渲染序列用来描述此序列之后的字符在终端中的呈现格式. 它采用字母 m 作为结尾. 在中间的 code 部分, 可以使用 ;分号来分隔不同的样式码. 它的形式类似于 x1b[31;43m 或 \033[31;43m , 这样的 CSI 也被称为 Select Graphic Rendition (SGR) 序列. 大多数终端支持 4 bit 色彩与 8 种样式: 前景色代码 F_BLACK 30 F_RED 31 F_GREEN 32 F_YELLOW 33 F_BLUE 34 F_PURPLE 35 F_LIGHTBLUE 36 F_WHITE 37 背景色代码 B_BLACK 40 B_RED 41 B_GREEN 42 B_YELLOW 43 B_BLUE 44 B_PURPLE 45 B_LIGHTBLUE 46 B_WHITE 47 效果代码 X_NULL 0 # 清空 X_BOLD 1 # 加粗 X_LIGHT 2 # 浅色 X_ITALIC 3 # 斜体 X_UNDERLINE 4 # 下划线 X_BLINK 5 # 闪烁 X_NEGA 7 # 负片 X_TRANSPARENT 8 # 透明 例如 printf(“\033[31;43mhello world\033[0m”); 将会呈现为黄底红字的 Hello World. 在末尾的\033 x1b[0m 将会清空样式, 由于 CSI 将会影响之后的所有输出, 如果不清空的话, 会导致之后的所有输出都具有此样式. 有些终端可接受 8 bit 256 色, 这被称作 “True Color”, 现代终端模拟器甚至可以支持 24bit 颜色, 已经是标准的图像颜色支持了. 24bit 色彩使用 RGB 序列, 以这样的形式输出: \033[38;2;r;g;bm 前景色 \033[48;2;r;g;bm 背景色 示例不是很清楚要仔细看看 光标移动序列 转义序列 作用 CSIA 光标向上移动 n 行 CSIB 光标向下移动 n 行 CSIC 光标向前移动 n 列 CSID 光标向后移动 n 列 CSI;H 光标移动到第 n 行, 第 m 列 清屏指令 CSIcJ 清空屏幕, 当 c 为: 0: 清空光标以下区域 1: 清空光标以上区域 2: 清空全部 CSIcK 清空行, 当 c 为: 0: 清空光标之后区域 1: 清空光标之前区域 2: 清空整行 使用宏可以方便控制。仅仅用前景色举例也可以用函数实现
思考练习
1.画出俄罗斯方块的所有形状。
截图来源 23物联网工程1班 陈天翔
2.一个运动的火车