这是一个使用 CMake 构建的 C 项目模板,包含源代码和单元测试结构,支持 Clang 编译器,并配置了代码格式管理。
本仓库提供了一个高效且易于理解的链表(Linked List)数据结构实现。无论是单向链表、双向链表还是循环链表,这里都有完整的代码示例和详细的注释,适合学习、教学以及实际项目中的使用。
- 单向链表(Singly Linked List)
- 支持基本操作:插入、删除、查找、遍历。
- 双向链表(Doubly Linked List)
- 支持双向遍历。
对应环境在Visual Studio Code 官网文档中心都有详细说明,点击对应链接查看配置过程
请确保已安装以下工具:
ClangFormat包含在LLVM软件包中
安装后将对应软件的
bin
目录,添加到系统环境变量 PATH 中,以便在命令行中方便地访问
- LLVM
- ClangFormat: 代码格式化工具
- CMake : 跨平台的构建系统生成工具
- Ninja: 小巧且高效的构建系统
- Python: 脚本编写
该项目包含 .clang-format
和 clang-format-config.json
文件,可以使用 clang-format
工具统一代码风格。在 .vscode
目录中还设置了代码格式的自动化管理。
格式化命令:
python .\scripts\run-clang-format-from-config.py
项目中配置了 clang-format
,用于统一代码风格。你可以在 .vscode
的 settings.json
中配置自动格式化支持,或者手动运行格式化脚本 scripts/run-clang-format-from-config.py
。
欢迎任何形式的贡献!如果你发现任何问题或希望增加新功能,请提交 Issue 或 Pull Request。
遵循 约定式提交 规范。请确保你的提交信息符合以下格式:
<类型>(<范围>): <描述>
其中:
类型
:用于描述提交的类别,常见的类型包括:feat
:新功能fix
:修复问题docs
:仅文档更新style
:不影响代码含义的更改(例如格式化、缺少分号等)refactor
:既不修复错误也不添加功能的代码更改test
:添加缺失的测试或修改现有测试chore
:构建过程或辅助工具的变动
范围
:提交影响的模块或文件,可以省略。描述
:简要说明修改内容。
feat(calculator): 添加乘法功能
fix(stack): 修复栈溢出问题
docs(readme): 更新安装说明
chore(ci): 添加 GitHub Actions 配置
- Fork 此仓库
- 创建分支 (
git checkout -b feat/your-feature
) - 按照约定式提交规范提交更改 (
git commit -m 'feat(scope): 添加新功能'
) - 推送到分支 (
git push origin feat/your-feature
) - 创建一个 Pull Request
此项目基于 MIT
许可证。详细信息请查看 LICENSE
文件。