Windows 平台下,conio.h 中有许多操作控制台颜色、格式的函数。但是再 Linux 平台下却没有类似的函数。经过在网上的一番搜索,找到了解决此问题的方法——转义字符\e。
注意,\e这种写法可能并不被你的编译器所支持(Linux下的GNU和Bash支持,亲测无误),因为他并不是ANSI C的。可以用\033代替。
此种方式在 Windows 下无效。
注意:格式更改之后,即使更改他的程序退出,格式也会保留,除非使用代码0清除或退出这个终端。
1. 输出格式
使用以下代码更改输出格式:
printf("\e[%dm",format);
其中format是格式代码:
代码十进制 作用
0 清除所有格式
1 加粗,与格式2冲突
2 字体变暗,与格式1冲突
3 斜体
4 下划线
5 背景加亮,但有的机器上没效果
6 并没有效果
7 反显(背景色当前景色,前景色当背景色)
8 隐形(字符仍然存在,可以选中,只是看不到)
9 删除线
2. 颜色使用以下代码字符色:printf("\e[%dm",30 + color); // 前景色printf("\e[%dm",40 + color); // 背景色其中,color是颜色代码:代码十进制 颜色0 黑色,注意和控制台的背景色稍有区别1 红色2 绿色3 黄色4 蓝色5 紫色6 青色7 白色,但实际上是亮灰色注意:清除格式同样会恢复默认颜色。3. 其他指令使用以下代码执行控制台指令:printf("\e%s",cmd);其中cmd是指令字符串:指令字符串 作用c 清除屏幕,不可恢复[y;xH] 将光标移至第x列第y行处[nA 将光标上移n行[nB 将光标下移n行[nC 将光标右移n行[nD 将光标左移n行[K 清除从光标(包括)到行末的内容[s 记录光标的位置(只能记一次)[u 恢复光标的位置[?25l 显示光标[?25h 隐藏光标本文不定期更新--------------------- 版权声明:本文为CSDN博主「wxy_2015」的原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/wxy_2015/article/details/50640101
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。