C语言控制台下printf设置文字颜色和背景色以及实现简单的文字选择菜单 您所在的位置:网站首页 flash怎么把字变成彩色字体 C语言控制台下printf设置文字颜色和背景色以及实现简单的文字选择菜单

C语言控制台下printf设置文字颜色和背景色以及实现简单的文字选择菜单

2024-06-29 02:13| 来源: 网络整理| 查看: 265

这里说到的两个内容差不多都可以用在控制台上运行的一些小游戏里,控制某一部分的字体颜色和背景色以达到高亮显示强调的效果,这个选择菜单就是通过方向键或者自定义按键然后进行选项的选择。 比较简单,但是挺好玩的,就随便看看吧。

修改控制台的前景色和背景色

这里直接调用系统的函数,system(“color ef”);,即可实现,这个代码就是在控制台调用color指令,可以通过在控制台运行color …或者在代码中直接插入system(“color …”);,他就会输出有关这个指令的相关信息,包括每个数字表示什么颜色。 有两点需要注意的,一点是color后面跟的数是两位十六进制,分别表示前景色和背景色,第二点需要注意的是,这里修改的是全局设置,也就是说调用一次之后,整个控制台都会发生改变,而并不是针对某一位置或者某一段字符进行设置,如果像针对某一个字符串进行设置,看下面。

printf彩色输出

是通过控制台的转义序列来实现的,这是文本模式下的系统显示功能,似乎和语言没有太大联系。转义序列是以ESC开始的,即\033,ESC的十进制是27,转为八进制就是33了。 通用格式大致为ESC[{attr1};{attr2};…;{attrn}m,其中attr表示的是属性,也是属性值,通常直接就是数字表示了。在此我们进行三个常用属性的设置,主要是显示方式、字体颜色和背景色。 显示方式

0(默认值)1(高亮显示,顺便加粗?不确定)2(暗淡)22(非粗体,不确定)4(下划线)5(闪烁,但是我没看出有什么效果。。)25(非闪烁)7(反显,我也没看出效果)27(非反显)8(隐藏)

字体颜色

30(黑色)31(红色)32(绿色)33(黄色)34(蓝色)35(品红)36(青色)37(白色)

背景色

40(黑色)41(红色)42(绿色)43(黄色)44(蓝色)45(品红)46(青色)47(白色)

大致使用的示例代码如下 printf("\033[4;31;42m 输出红色绿背景下划线字符 \033[0m"); 在这里插入图片描述 这里我写了个函数可以直接拿来用,我写的比较啰嗦,你可以去把它优化一下,后面两个设置为NoneType的话就是默认显示方式而且结尾没有换行符或者回车。

#define HighLight 1 #define Underline 4 #define Spark 5 #define Contrary 7 #define Miss 8 #define NONETYPE 0 #define PTab 11 #define PEnter 12 ... void print(char *Message, char *ForeColor, char *BackgroundColor, int flag,int End) { //参数分别为输出的信息,字体颜色,背景色,显示方式和结尾标志 char ColorArray[8][10] = { "black","red","green","yellow","blue","purple","deepgreen","white" }; int ForeNum, BackgroundNum; for (int i = 0; i 0) Chosen--; break; case RightKey: if (Chosen


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

      专题文章
        CopyRight 2018-2019 实验室设备网 版权所有