语言/Language:
这是一个基于 C 语言的贪吃蛇游戏,使用 ncurses 库实现控制台界面。本项目由 AI 辅助生成和开发。
- 使用方向键或 WASD 键控制蛇的移动方向
- 蛇吃到食物(*)后会变长,分数增加
- 蛇撞到边界或自己的身体时游戏结束
- 按 Q 键可以退出游戏
- 支持中文显示,解决了在部分系统上的文字乱码问题
- 采用 locale 设置确保正确的字符编码
- 同时支持 CMake 和 Makefile 两种构建方式
需要安装 ncurses 库:
sudo apt-get install libncurses5-dev libncursesw5-dev # Ubuntu/Debian
brew install ncurses # macOS
# Windows 使用 MSYS2 安装
pacman -S mingw-w64-x86_64-ncurses mingw-w64-arm64-ncurses # MSYS2需要安装 CMake:
sudo apt-get install cmake # Ubuntu/Debian
brew install cmake # macOS
# Windows 使用 MSYS2 安装
pacman -S mingw-w64-x86_64-cmake mingw-w64-arm64-cmake # MSYS2Linux/macOS:
# 创建构建目录
mkdir -p build
# 进入构建目录并生成 Makefile
cd build
cmake ..
# 编译项目
make
# 返回根目录并运行游戏
cd ..
./bin/snakeWindows(MSYS2):
# 创建构建目录
mkdir -p build
# 进入构建目录并生成 Makefile
cd build
cmake .. -G "MinGW Makefiles"
# 编译项目
mingw32-make
# 返回根目录并运行游戏
cd ..
./bin/snake.exeLinux/macOS:
# 编译项目
make
# 运行游戏
./bin/snakeWindows(MSYS2):
# 编译项目
mingw32-make
# 运行游戏
./bin/snake.exe使用 CMake 时:
rm -rf build
rm -f bin/snake # Linux/macOS
rm -f bin/snake.exe # Windows使用传统 Makefile 时:
make clean # Linux/macOS
mingw32-make clean # Windows或者手动清理:
rm -rf build obj
rm -f bin/snake # Linux/macOS
rm -f bin/snake.exe # Windowssrc/- 源代码目录main.c- 主函数,处理游戏初始化和主循环snake.c- 游戏逻辑实现
include/- 头文件目录snake.h- 头文件,定义数据结构和函数声明
test/- 测试文件目录snake_test.c- 游戏逻辑测试用例
bin/- 可执行文件目录snake- 编译后的游戏可执行文件
build/- 构建临时文件目录(可删除)obj/- 对象文件目录(可删除)doc/- 文档目录project_prompt.md- 项目开发提示词
.github/workflows/- GitHub Actions 配置目录build.yml- 自动构建和测试配置
.gitignore- Git 忽略文件配置CMakeLists.txt- CMake 构建配置文件Makefile- 传统 Makefile 构建配置README.md- 项目说明文档