setbkcolor(int color)函数调用时出现冲突是什么原因。

 

有没有include图形库呢,graphics.h

#include<stdio.h>
#include<graphics.h>//图形库头文件,自己下载,VS不自带

#define WIDTH 640                  //图形界面的宽度
#define HEIGH 240                  //图形界面的高度
#define GRID_SIZE 15               //石块尺寸 像素
#define COL WIDTH /GRID_SIZE       //图形界面列数
#define ROW HEIGH/GRID_SIZE        //图形界面的行数
void GameInit();
void Show();
void Gamedraw();

int map[ROW][COL];                 //初始化,全部变量初始化为0

enum ATTR
{
	SPACE, //空白
	WALL,  //墙
	BALL,  //玩家,球
	DOOR,  //游戏通关的门
	ENEMY  //敌人
};

int main(void)    //主函数
{

	GameInit();
	Show();
	Gamedraw();
	while (1)
	{
		;
	}
	return 0;
}

void GameInit()
{
	//初始化左右两边的墙
	for (int i = 0;i < ROW;i++)
		map[i][0] = map[i][COL - 1] = WALL;
	//初始化上下两边的墙
	for (int k = 0;k < COL;k++)
		map[0][k] = map[ROW - 1][k] = WALL;
}

void Show(void)     //定义图形界面函数
{
	int i, k;
	for (i = 0;i < ROW;i++)
	{
		for (k = 0;k < COL;k++)
		{
			printf("%d", map[i][k]);
		}
		printf("\n");
	}

}

void Gamedraw()  //设置窗口
{
	setbkcolor(WHITE);  //将窗口背景设置为白色
	cleardevice();   
	for(int i = 0; i < ROW; i++)
		for (int k = 0; k < COL; k++)
		{
			switch (map[i][k])
			{
			case WALL:
				setlinecolor(WHITE);
				setfillcolor(RGB(10, 10, 10));
				fillrectangle(i * GRID_SIZE, k * GRID_SIZE, i * GRID_SIZE + GRID_SIZE, k * GRID_SIZE + GRID_SIZE);
				break;
			case BALL:
				break;
			case DOOR:
				break;
			case ENEMY:
				break;
			default:
				break;


			}
		}
	
	
}

 

C和C++完整教程:https://blog.csdn.net/it_xiangqiang/category_10581430.html

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632

非常感谢您使用有问必答服务,为了后续更快速的帮您解决问题,现诚邀您参与有问必答体验反馈。您的建议将会运用到我们的产品优化中,希望能得到您的支持与协助!

速戳参与调研>>>https://t.csdnimg.cn/Kf0y