大概九月份左右想看看能不能改变窗口颜色(每天看着黑色的实在无趣)就从网上找的一些方法,自己加工整合了一下。最初代码文章实在找不到了!
以下代码均在cfree上成功运行
#include<windows.h>
void color(int i)
{
if (0 <= i && i <= 15)
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), i);
else
return;
}
输入0到15都表示一种颜色!。能单独改变某句话颜色,使用时在前面调用就行了。
#include<stdio.h>
#include<windows.h>
void color(int i)
{
if (0 <= i && i <= 15)
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), i);
else
return;
}
int main()
{
int i;
for(i=0;i<=15;i++)
{
color(i); //调用改变颜色函数
printf("%d:Hello world!\n",i);
}
return 0;
}
因为数字代表的颜色记不清,所以用宏定义替换了数字
(……不要在意这些宏名,如果有对该颜色更好的描述请自行替换)
#include<windows.h>
#define BLACK 0 //黑色
#define COBALTBLUE 1 //钴蓝
#define GREEN 2 //绿色
#define BLUE 3 //蓝色
#define RED 4 //红色
#define PURPLE 5 //紫色
#define DARKYELLOW 6 //深黄色
#define WHITE 7 //白色
#define GRAY 8 //灰色
#define INDIGO 9 //靛蓝
#define LIGHTGREEN 10 //浅绿
#define LIGHTBLUE 11 //浅蓝
#define LIGHTRED 12 //浅红
#define LIGHTPURPLE 13 //浅紫
#define LIGHTYELLOW 14 //浅黄
#define BRIGHTWHITE 15 //亮白
void ColorOne(WORD col)
{
if (col == NULL)
return;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), col);
}
以上方法都是改变前景字体颜色。还可以用 system(“color 这里输入数值”) 改变前景和背景颜色,缺点就是无法改变指定区域颜色,以下是使用规则