记得刚接触C语言时,上机运行代码输出结果每次都是黑色的控制台白色的文字。。。。。
就像下面这样。视觉体验极差,十分的不美观。感觉很low。
这就引发了我的思考,输出结果必须是黑框白字吗?
显然不是这样的。我们可以自己设置文字和文本颜色。那么该如何设置呢?有两种方法。
1、调用windows API
#include<stdio.h>
#include<windows.h>//控制Dos界面
HANDLE hout;//控制台句柄
color(int c)
{
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),c);
}
main()
{
color (0);
printf("这是0号颜色\n");
color (1);
printf("这是1号颜色\n");
color (2);
printf("这是2号颜色\n");
color (3);
printf("这是3号颜色\n");
color (4);
printf("这是4号颜色\n");
color (5);
printf("这是5号颜色\n");
color (6);
printf("这是6号颜色\n");
color (7);
printf("这是7号颜色\n");
color (8);
printf("这是8号颜色\n");
color (9);
printf("这是9号颜色\n");
color (10);
printf("这是10号颜色\n");
color (11);
printf("这是11号颜色\n");
color (12);
printf("这是12号颜色\n");
color (13);
printf("这是13号颜色\n");
color (14);
printf("这是14号颜色\n");
color (15);
printf("这是15号颜色\n");//数值超过15改变的就不是文本的颜色了改变的是背景色,有兴趣的可以自己上机调试一下。
}
说明:C语言中SetConsoleTextAttribute是设置控制台窗口字体颜色和背景色的函数
注意:使用这种方式设置控制台的文字颜色,有两点局限性
(1) 仅限Windows系统使用,像iOS、Linux系统就不能这样设置
(2) 不能改变控制台的背景色,控制台的背景色只能是黑色。
思考:
上面设置了颜色代码,那么改变的是下面所有输出文字的颜色。如果想要把输出的文字设置成不同的颜色,该如何操作?
只需要在要改变颜色的输出语句前面,单独加上颜色代码即可。
颜色说明如下:
运行结果截图:
是不是顿时感觉高大上了好多,但是上面这种方法很明显比较繁琐,而且控制台的背景只能是黑色。而下面的这种办法则很好的解决了这种问题。
2、更改属性法
运行一个程序,在弹出的控制台上右击标题栏,选择属性
选择颜色
这样就可以根据自己的喜好来自由变换颜色,左上方选择更改哪里的颜色,右上方通过填写rgb值来自由设置颜色。
列如下面将背景设置为绿色,文字设置为红色
以上就是设置文字颜色的两种方法。建议大家选择第二种,当然如果有同学想选第一种,那也没有问题呀!加油!