C语言如何使控制台呈现不同的颜色
控制台实现不同的颜色分布
一般来说,控制台不简单是黑乎乎的窗口,它一样也可以拥有颜色。
在这里,我将简单的做一个笔记!
提示:点击目录可以跳转到相应的界面哦~
1. 代码规范
system("color 47");//表示红底白字
颜色属性由两个十六进制数字指定 –
第一个对应于背景,第二个对应于前景。
2. 颜色对应的数字(表格)
0 | 黑色 |
---|---|
1 | 蓝色 |
2 | 绿色 |
3 | 浅绿色 |
4 | 红色 |
5 | 紫色 |
6 | 黄色 |
7 | 白色 |
8 | 灰色 |
9 | 淡蓝色 |
A | 淡绿色 |
B | 淡浅绿色 |
C | 淡红色 |
D | 淡紫色 |
E | 淡黄色 |
F | 亮白色 |
以上就是对应的颜色,自己喜欢啥颜色,就可以添加啥数字!
3.赋予控制台上的文字颜色
这里就需要 运用到句柄的知识了。
下面是代码展示
void color(int m) {
HANDLE consolehend;
consolehend = GetStdHandle(STD_OUTPUT_HANDLE);
SetConsoleTextAttribute(consolehend, m);
}
既然代码已经给出,那如何使用呢?
在你要改变颜色的地方,在其上方加入以上代码,就可以了,如下:
color(4);
printf("hello world");
color(0xE);
printf("你好,世界");
具体的不同颜色,对应前面的表格中的不同的数字!
3.1效果展示
3.2以上效果的代码完整展示
#include<stdio.h>
#include<time.h>
#include<windows.h>
void color(int m) {
HANDLE consolehend;
consolehend = GetStdHandle(STD_OUTPUT_HANDLE);
SetConsoleTextAttribute(consolehend, m);
}
int main()
{
color(4);
printf("hello world\n");
color(0xE);
printf("你好,世界");
return 0;
}
4.注意事项
默认情况下,如果不设置颜色,系统会在控制台上默认显示黑底白字!