本项目是一个基于 C语言 开发的 跨平台终端贪吃蛇游戏,支持 Windows(conio.h) 和 Linux/macOS(ncurses) 系统,采用模块化设计,代码简洁清晰。
核心功能
经典贪吃蛇玩法
使用方向键(Windows)或 WASD(Linux/macOS)控制蛇的移动。
吃到食物(*)后蛇身增长,并增加分数。
撞墙或自身游戏结束,显示最终得分。
跨平台兼容
自动检测操作系统,适配不同的输入和渲染方式:
Windows:使用 conio.h 的 _kbhit() 和 _getch() 实现非阻塞输入。
Linux/macOS:基于 ncurses 库,支持更丰富的终端图形渲染。
自适应终端窗口
游戏地图大小可调(WIDTH 和 HEIGHT 宏定义),适应不同终端尺寸。
实时显示分数和游戏状态。
可扩展架构
采用 状态机模式(GameState 结构体)管理游戏数据,便于新增功能(如关卡、存档)。
模块化代码设计,snake.h 声明核心逻辑,snake.c 实现具体功能。