C语言实现改变控制台字体颜色

控制台大多数默认是黑底白字的,有时看起来总会有点枯燥,这时候可以改变字体颜色来缓解

在设置颜色时,每个数值都代表着对应的颜色,改变颜色依靠改变参数的数值,对照表如下:

0 = 黑色       8 = 灰色
1 = 蓝色       9 = 淡蓝色
2 = 绿色       A = 淡绿色
3 = 浅绿色     B = 淡浅绿色
4 = 红色       C = 淡红色
5 = 紫色       D = 淡紫色
6 = 黄色       E = 淡黄色
7 = 白色       F = 亮白色

颜色的改变可以分为全局改变和局部改变两种,具体实现如下:

① 全局改变字体颜色

改变颜色需要头文件:windows.h
使用方法:system("color **");
第一个*是背景颜色,第二个*是字体颜色
#include <stdio.h>
#include <windows.h>

int main()
{
    system("color 35");  //背景为蓝色,字体为紫色
    printf("\n  颜色测试  \n");
	return 0;
}

运行结果:
在这里插入图片描述

② 局部改变字体颜色

但有时候我们并不希望全部的颜色都是一样的,这时候就需要用到局部颜色改变啦~

改变颜色需要头文件:windows.h
这里写的是自定义函数
#include <stdio.h>
#include <windows.h>

//局部字体改变颜色
void color(short x)
{
    if (x >= 0 && x <= 15)//参数在0-15的范围颜色
        SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), x);	//只有一个参数,改变字体颜色
    else//默认的颜色白色
        SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 7);
}

int main()
{
    color(6);
    printf("\n  这是黄色  \n");
    color(4);
    printf("\n  这是红色  \n");
	return 0;
}

运行结果:
在这里插入图片描述
这时候就能随心所欲地改变字体颜色了!~~


星之所在,心之所向(寒冰小澈)

posted @ 2021-01-22 20:58  IceClean  阅读(282)  评论(0)    收藏  举报