C 语言小游戏⑤:贪吃蛇(控制台)
用坐标数组模拟贪吃蛇:绘制游戏区、转向控制、吃食物变长、撞墙判定,完整控制台版 C 代码。
一个关于编程的个人网站:语言基础、工具技巧、算法心得与 Web 开发笔记,持续更新中。
手把手、分步骤,用 Python / C / C++ 从零做出能玩的小游戏:猜数字、贪吃蛇、扫雷、2048、井字棋……
用坐标数组模拟贪吃蛇:绘制游戏区、转向控制、吃食物变长、撞墙判定,完整控制台版 C 代码。
文本 RPG:Player 类、回合制战斗、std::map 地图、vector 背包,面向对象与 STL 串成冒险。
前四篇都在终端里玩文字游戏,这篇用 pygame 做经典贪吃蛇,首次接触"游戏主循环":每帧重复"处理输入 → 更新状态
在控制台实现 2048:滑动合并核心算法、转置与镜像技巧、胜负判定,完整 C 代码可编译运行。
不用图形库做控制台动画:ANSI 清屏重绘、termios 无阻塞按键、帧循环,一个 while 跑起实时 Pong。
井字棋(Tic-Tac-Toe)的棋盘只有 3×3,规则简单到一句话:谁先连成一线谁赢。但把它写成程序,你要处理输入校验
用二维数组打造可玩的文本迷宫:WASD 移动、撞墙检测、通关判定,一步步写出完整 C 代码。
控制台扫雷:二维 vector 建模、随机布雷、方向数组算雷数,用 std::queue 做 BFS 实现空白自动扩散。
猜单词(Hangman)是经典的文字游戏:程序藏起一个单词,只显示字母个数,你一个个猜字母,猜对就亮出位置,猜错就少一次
C 语言写一个自动出题的数学速算问答:随机加减乘除、判分与评价,完整代码可直接编译运行。
带 AI 的井字棋:vector 棋盘建模、胜负判定、回溯试探策略,能赢就赢、赢不了就堵,写出不输的对手。
石头剪刀布(Paper-Scissors-Rock)规则人人皆知,但亲手用代码实现一遍,你会对"如何把现实规则翻译成程序
用 C 语言实现经典猜数字小游戏:随机数、输入判断与循环一次学会,附完整可编译代码。
面向对象版猜数字:类封装状态、随机数生成答案、vector 记录猜测历史,一步步带出 C++ 核心思想。
猜数字是几乎所有程序员写过的第一个小游戏:电脑随机想一个 1 到 100 之间的数,你猜,它只告诉你"大了"还是"小了"
auto、lambda、移动语义、结构化绑定等 C++11/14/17 核心新特性一网打尽,附新旧写法对照表。
读写文件、遍历目录、批量重命名……这些"脏活累活"正是 Python 脚本的拿手好戏。本文围绕 open() 与 pat
以命令行待办清单为例,走完选题、拆模块、argparse、pytest 测试到打包发布的完整闭环。
总结先复现、再二分、后修复的调试方法论,涵盖日志、断点、git bisect、网络排查三板斧与常见 Bug 速查表,把调试练成条件反射。
用 pre-commit、commit-msg、pre-push 钩子在提交与推送瞬间拦截问题,让质量检查不再靠自觉。
动态规划五步法:从斐波那契到爬楼梯、路径问题和背包问题的入门指南。
unique_ptr、shared_ptr、weak_ptr 三兄弟的使用场景与循环引用陷阱,告别裸指针内存泄漏。
覆盖标题段落、强调列表、链接图片、代码块、表格引用等 Markdown 核心语法,并给出技术写作的规范建议,让纯文本也能排版精美。
掌握 fopen 到 fclose 的完整流程,读写文本与二进制文件,实现文件拷贝。
以 SQLite 为主线掌握增删改查、参数化查询与事务,并延伸至 MySQL/PostgreSQL 连接。
程序出错不可怕,可怕的是直接崩溃。异常处理让程序"优雅地失败":该报错时报错,该兜底时兜底。配合调试技巧,你就能从"看到
Python 是当今最流行的编程语言之一:语法简洁、生态丰富,无论是写脚本、做数据分析、开发 Web 还是学习算法,它都
从词法作用域推导闭包本质,覆盖私有变量、循环陷阱与内存管理,附速记清单。
Git 是每个程序员必须掌握的工具。本文不追求面面俱到,而是把日常开发中 出现频率最高 的命令整理成速查表,配合真实场景
紧急切分支时用 git stash 寄存半成品,覆盖 push/pop、未跟踪文件处理与清理找回,附切换分支实战。
函数模板、类模板、特化与非类型参数,用迷你栈和定长数组两个例子吃透 C++ 泛型编程基础。
告别 HTTP 轮询:WebSocket 握手升级、数据帧格式、Node 示例,以及心跳保活、断线重连等生产实践。
理清 GIL、线程池与 asyncio 协程的适用场景,用并发下载与异步请求实战对比性能。
"不要重复造轮子"是 Python 社区的信条。标准库提供开箱即用的能力,几十万个第三方包通过 pip 一键安装。会用模
"JS 是单线程的,却能处理大量并发"--理解异步是进阶前端的第一道坎。本文从事件循环讲起,带你彻底搞懂 Promise
讲解镜像、容器、仓库三大概念,从第一个容器到 Dockerfile 编写、数据卷挂载与 docker compose 编排,半小时跑通容器化流程。
用结构体组织复杂数据,掌握结构体数组、指针与 typedef,顺带认识联合体。
引用与指针的本质区别、const 引用、引用返回值的陷阱,以及现代 C++ 中两者各自的最佳使用场景。
递归三要素、记忆化优化与分治思想,附二叉树遍历与归并排序示例。
数据结构是程序的骨架。本文用最直观的方式介绍三种基础结构--数组、链表、栈,重点对比它们的内存模型与时间复杂度。
merge 保留真实历史,rebase 重写为线性历史。讲清本质区别、适用场景与黄金法则,附实战与决策清单。
面向对象编程(OOP)把数据和操作数据的方法打包成"对象",让代码更贴近现实世界的建模方式。Python 的类机制灵活而
从闭包到 @语法糖,掌握 wraps、带参装饰器,并用计时器与 lru_cache 缓存实战收尾。
理解栈与堆,学会 malloc、calloc、realloc 与 free,避开内存泄漏陷阱。
你在浏览器输入网址回车,背后发生了什么?答案就是 HTTP--Web 世界的通用语言。本文用 curl 实战拆解请求与响
map、filter、reduce 逐个击破,用声明式代码替代 for 循环,含链式调用实战。
从资源命名、HTTP 方法与状态码,到分页、版本控制与 curl 调试,RESTful API 设计最佳实践一网打尽。
从三种模式讲透 Vim 核心概念,覆盖光标移动、编辑操作、查找替换、可视模式与 .vimrc 配置,10 分钟跨过入门门槛。
std::string 的拼接、查找、子串、数字互转与 C 字符串互转,附处理中文时的字节陷阱提醒。
列表(list)和字典(dict)是 Python 中使用频率最高的两种容器:前者处理"有序的一串东西",后者处理"键到
理解迭代协议与 yield 惰性求值,用生成器处理大文件,搭配 itertools 工具箱提升效率。
从内存地址讲起,掌握指针声明、解引用、指针与数组及传址调用。
从 Git Flow 到 Trunk-Based,看懂三种主流分支策略的适用场景与命名规范,为团队选对方案。
正则表达式(Regex)是用一段"模式字符串"在文本中查找、提取、替换内容的技术。学会它,处理日志、校验输入、批量替换的
按场景归类讲解 Linux 高频命令:文件目录、查看内容、权限用户、进程监控、网络操作与管道重定向,附真实示例,照着敲一遍即可上手。
哈希表如何用空间换时间,讲透冲突解决与两数之和等经典应用。
红黑树 map/set 与哈希 unordered_map 的用法对比,词频统计与两数之和实战,学会按场景选对容器。
一维二维数组、字符数组与字符串函数,用冒泡排序完成实战练习。
掌握 datetime 读写、timedelta 运算与 zoneinfo 时区处理,含工作日计算实战与常见坑。
无论是爬虫清洗数据、日志分析还是命令行工具,字符串处理都是 Python 开发者的日常。Python 的 str 类型自
拆解事件捕获、冒泡与目标三个阶段,掌握 event 对象与事件委托,告别重复绑定。
HTTPS 小锁头背后的密码学:TLS 1.3 往返握手、证书信任链、对称与非对称加密,以及 openssl 实战观察。
理解函数定义、参数传递与返回值,并用递归写出阶乘与斐波那契数列。
动态数组 vector 的增删改查、三种遍历方式、扩容机制与 reserve 预留,附迭代器失效等避坑指南。
用购物车比喻讲清工作区、暂存区、版本库,详解 git status、diff 与三种 reset,告别提交困惑。
用 requests 与 BeautifulSoup 走完请求页面、解析 HTML、提取数据、保存 CSV 全流程,附爬虫礼仪。
函数是组织代码的基本单元。会写 def 只是入门,真正拉开差距的是对参数机制和作用域规则的理解:默认参数、可变参数、关键
二分查找的模板代码、边界陷阱与旋转数组进阶,面试一次写对。
if、switch、while、for 一网打尽,用嵌套循环实战打印九九乘法表。
继承、虚函数、纯虚函数与抽象类,拆解多态背后的虚函数表原理,讲透虚析构函数为什么必不可少。
从获取元素到动态渲染列表,系统讲解 DOM 增删改查与性能优化,含商品列表实战。
TCP 可靠但开销大,UDP 轻快但不管不顾。从三次握手到报文头,用对比表与 nc 实验讲清两个传输层协议的选型之道。
覆盖算术、赋值、关系、逻辑与位运算,搞懂优先级和自增自减的常见坑。
从零掌握 requests 库:GET/POST、参数与超时、异常处理,并用免费天气 API 完成实战。
程序的核心能力之一就是"根据条件做选择、按规则反复执行"。Python 用 if / elif / else 表达分支,
冒泡、快排、归并三种排序的思路、代码与复杂度对比,附面试答题技巧。
系统讲解 C 的整数、浮点、字符等基本类型,掌握变量声明、取值范围与类型转换。
理解 class 与 struct 的差异,掌握构造函数、析构函数、访问控制和初始化列表,亲手写出安全可靠的类。
从变量声明到函数与模板字符串,半小时掌握 JavaScript 最核心的语法,附可运行示例。
从域名到 IP 的完整解析流程:分层结构、递归与迭代查询、常用记录类型与 TTL 缓存,以及 dig 排障实战方法。
用标准库 json 与 csv 模块完成数据读写、清洗与格式转换,含 JSON/CSV 互转与实战示例。
从环境搭建到跑通第一个 Hello World,理解编译流程与常见报错,迈出 C 语言第一步。
从 C 语言平滑过渡到 C++:iostream 输入输出、引用、函数重载三大新特性速览,附 C 到 C++ 迁移对照表。
变量是程序存放数据的"盒子",数据类型则决定了盒子里能装什么、能做什么运算。Python 是动态类型语言,写起来很自由,