尝试了一下贪吃蛇简易版的小游戏C++,这是部分分享,如果感兴趣的多了,请期待下半篇。
#include <time.h> // 时间头文件
#define WIDTH 20 // 游戏区域的宽度
#define HEIGHT 20 // 游戏区域的高度
// 定义一个点结构体,用于表示坐标
typedef struct {
int x; // 点的x坐标
int y; // 点的y坐标
} Point;
// 定义一个蛇结构体
typedef struct {
Point body[100]; // 蛇的身体部分,由多个点组成
int length; // 蛇的长度
char direction; // 蛇的移动方向
} Snake;
// 定义一个食物结构体
typedef struct {
Point position; // 食物的位置
} Food;
// 将光标移动到控制台的指定位置
void gotoxy(int x, int y) {
COORD coord; // 定义一个坐标结构体
coord.X = x; // 设置x坐标
coord.Y = y; // 设置y坐标
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), coord); // 设置光标位置
}
void drawBorder() {
for (int i = 0; i < WIDTH + 2; i++) { // 绘制上边界
gotoxy(i, 0); // 移动光标到指定位置
printf("#"); // 打印边界符号
gotoxy(i, HEIGHT + 1); // 移动光标到指定位置
printf("#"); // 打印边界符号
}
for (int i = 0; i < HEIGHT + 2; i++) { // 绘制左右边界
gotoxy(0, i); // 移动光标到指定位置
printf("#"); // 打印边界符号
gotoxy(WIDTH + 1, i); // 移动光标到指定位置
printf("#"); // 打印边界符号
}
}
return 0; // 返回0
}