c语言俄罗斯方块问题

int color(int c)
{
switch(c)
{
case 0: c=9;break;
case 1:
case 2: c=12;break;
case 3:
case 4: c=14;break;
case 5: c=10;break;
case 6: c=13;break;
default: c=7;break;
}
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), c); //更改文字颜色
return 0;
}
在给方块添加颜色的部分无法理解,为何c=某个数字就代表一种不同的颜色 ,我在网上查了 倒数第二行的代码 ,好像要用red black 来表示颜色 而这里怎么直接用数字来表示颜色呢?

red black只是给人看的,计算机只知道数字。你看到的有可能是别的api,要不就是#define 或者const,enum定义的常量追问

意思就是1 2 3 4 5 数字本身就代表了某种颜色? 那么可以告诉我分别是哪些颜色吗?

追答

网页链接 官方文档,第二个参数类型是_In_ WORD(和整形差不多)。

不仅是表示颜色,还有其他属性。不同的数值(不同数位)代表不同的属性。你说的那些名称都是定义在windows.h里面

具体什么颜色随便网上一搜就有,比如网页链接

代码自己复制来测试下

温馨提示:答案为网友推荐,仅供参考
相似回答