- 博客(37)
- 收藏
- 关注
原创 C语言第17讲:编译与链接
预处理:处理 # 指令,生成.i编译:C 代码 → 汇编,生成.s汇编:汇编 → 机器码,生成.o链接:合并文件与库 → 生成.exe运行:加载 → 执行 main。
2026-05-09 11:15:15
247
原创 C语言:三大基础排序算法模板 冒泡 / 选择 / 插入)
在 C 语言初学阶段,冒泡排序、选择排序、插入排序是必须掌握的三大基础排序算法。逻辑简单、代码固定、考试和作业高频必考,本文整理可直接复用的降序通用模板三种算法都是简单直观的基础排序,适合初学者理解排序逻辑;模板为通用降序版本,只需改判断符号即可转为升序;做题、考试、课程设计可直接复制代码使用,无需重复改写;记忆重点:记准核心思想 + 关键判断条件,就能默写代码。如果这篇模板对你有帮助,欢迎,后续会持续更新 C 语言入门干货、算法模板与编程技巧,助力你高效备考、快速写代码!
2026-05-09 11:12:50
17
原创 C语言第16讲:文件操作
硬盘上的文件就是文件。程序文件数据文件:程序运行时读写的数据(本章重点)文件用于数据持久化fopen打开,fclose关闭读取结束判断:看函数返回值,不是 feof文件有缓冲区,必须正确关闭上面 5 套模板背会,文件操作直接无敌。
2026-05-08 07:30:31
253
原创 C语言第15讲:动态内存管理
malloc:申请内存,不初始化calloc:申请 + 初始化为 0realloc:扩容 / 缩容(用临时指针接收)free:释放,必须成对出现动态内存常见错误:NULL、越界、野指针、泄漏、重复释放柔性数组:结构体末尾变长数组,方便释放、内存连续栈:自动管理;堆:手动管理。
2026-05-08 07:26:32
269
原创 C语言第3讲:分支和循环
分支:if /if-else/switch 处理多路径选择循环:while /for/do-while 处理重复逻辑跳转:break 退出、continue 跳过、goto 自由跳转实战:随机数 + 分支 + 循环 = 可写小游戏规范:多用{}、函数拆分、代码清晰易读。
2026-05-07 23:33:12
295
原创 C 语言第18讲:预处理详解
C 语言自带一批预定义符号,预处理阶段直接展开,可直接使用__FILE__ // 正在编译的源文件名__LINE__ // 当前行号__DATE__ // 编译日期(月 日 年)__TIME__ // 编译时间(时:分:秒)__STDC__ // 遵循ANSI C则为1,否则未定义printf("文件:%s\n行号:%d\n", __FILE__, __LINE__);#define 名字 替换文本;case多行宏用续行符⚠️重点:宏定义尽量不要加分号;否则替换后会多出语句,导致语法错误。
2026-05-07 23:20:40
250
原创 C 语言第1讲:常见概念
C 语言是编译型语言,推荐使用 VS2022main 函数是程序唯一入口库函数必须包含对应头文件字符单引号、字符串双引号,字符串以\0结尾转义字符以开头好注释能大幅提升代码如果这篇文章对你有帮助,欢迎,后续会持续更新 C 语言干货~
2026-05-07 12:50:14
421
原创 C语言第4讲:数组
数组下标从 0 开始,严禁越界访问初始化项数不能大于数组定义大小二维数组可省略行,不能省略列统一用计算元素个数二分查找必须是有序数组变长数组不能初始化,VS 环境不支持数组是 C 语言的基础中的基础,掌握好数组的创建、访问、内存存储和常见用法,对后续学习指针、函数、数据结构都至关重要。如果这篇文章对你有帮助,欢迎,后续会持续更新 C 语言干货~
2026-05-07 12:43:56
558
原创 C语言第12讲:数据在内存中的存储
整数在内存中存补码,正整数三码相同多字节数据有大小端,X86 默认小端大小端判断:取 int 低地址字节,1 = 小端浮点数按 IEEE 754 存储:S+E+M,E 加偏移,M 省略首位 1无符号数循环、char 越界、strlen 遇 0 停止都是高频坑点。
2026-05-05 22:37:38
426
原创 C语言数据在内存中的存储(后续会持续优化)
C 语言是贴近硬件的语言,数据溢出、符号扩展、字节序、指针越界、类型强转等问题,本质都来自内存存储规则。搞懂这一章,你才能真正看懂底层、写稳代码、过面试。大端:高位字节存低地址,低位字节存高地址小端:低位字节存低地址,高位字节存高地址(X86 默认小端)整数在内存中以补码存储,统一符号与运算多字节数据存在大小端,X86 默认小端无符号数溢出、char 越界、符号扩展是常见坑浮点数严格遵循IEEE 754,按 S/E/M 分段存储整型与浮点强转,内存不变、解析规则不同。
2026-04-30 00:14:06
394
原创 指针经典编程练习题 解题方法 + 完整代码
调整数组顺序,所有奇数放前面,偶数放后面。:每次把第一个字符移到末尾,循环 k 次。:后半段 + 前半段,拼接新字符串。
2026-04-23 16:04:35
134
原创 一维数组和二维数组传参写法+(函数的声明+定义+调用)
表格数组类型形参写法(推荐)本质一维数组一级指针二维数组void func(int arr[][列], int row)数组指针。
2026-04-23 12:33:37
18
原创 C语言第7讲:VS 实用调试技巧
bug 本意是昆虫、虫子,现在特指计算机程序、系统中隐藏未被发现的缺陷与逻辑漏洞。当程序出现异常、结果错误、崩溃时,定位错误位置 → 分析出错原因 → 修改修复代码 → 重新测试运行的全过程,就叫做调试。英文 debug 含义就是消灭 bug。逐过程、逐语句跟踪代码执行流程隔离屏蔽可疑代码段实时观察变量数值变化还原程序出错完整全过程。
2026-04-22 20:56:38
476
原创 C 语言随机数与随机数种子 详解
C 语言中不存在真随机数,我们使用的全部都是伪随机数,通过固定数学算法计算生成。而随机数种子,就是这套算法的初始起始值,直接决定整串随机数结果。
2026-04-18 22:04:16
183
原创 C 语言数组 + 函数实战|控制台扫雷游戏完整详解✨(多文件模块化)
扫雷作为经典桌面小游戏,非常适合C 语言初学者练手二维数组、函数封装、多文件编程、随机数应用。本文采用标准分文件写法,逻辑清晰、结构规范,完全符合 VS 编译运行,零基础也能看懂、复制即可运行,同时附带游戏设计思路与后续拓展优化方向。二维字符数组棋盘存储与遍历操作函数模块化封装,分工清晰易维护C 语言多文件工程编程规范(头文件声明 + 源文件实现)rand()srand()结合时间戳生成随机坐标数组下标边界处理,防止越界访问字符与数字 ASCII 码算术转换。
2026-04-18 16:50:44
954
原创 C 语言第5讲:函数
自定义函数是 C 语言最核心、最灵活的部分,也是我们写程序的主力。C 语言编译器从上往下扫描代码。如果函数定义在调用之后,必须先声明。函数声明格式:c运行函数必须先声明,后使用。函数定义本身也是一种特殊的声明。函数是 C 语言模块化编程的基础库函数开箱即用,自定义函数灵活实现形参是实参拷贝,数组传参是传地址函数必须先声明后使用工程中使用.h.c分离结构static用于限制作用域、延长局部变量生命周期。
2026-04-17 18:51:31
320
原创 超清晰对比:scanf(“%s“, str) vs fgets 读取字符串
scanf:简单,不能读空格fgets:能读空格,要删换行你现在完全懂了吗?😎。
2026-04-16 17:34:15
180
原创 C 语言数组名与指针变量知识点总结(刚学是犯过错)
指针变量是独立的内存空间,存储的是数组元素的地址。固定为数组首元素,无法作为循环终止条件。:数组名是常量,不能执行自增操作。不能执行自增、赋值等修改操作。
2026-04-13 12:49:54
30
原创 C 语言数组详细讲解(后续我会持续优化)
数组是相同类型元素的集合数组下标从 0 开始一维 / 二维数组在内存中都连续存放二维数组行可省,列不可省变长数组是 C99 语法,用变量指定大小二分查找是有序数组最高效查找算法。
2026-04-12 11:44:13
330
原创 用超形象比喻讲清:字符、字符数组、字符串
字符= 一个字字符数组= 一排格子字符串= 一排格子 + 最后有个句号(\0)不是所有字符数组都是字符串,但所有字符串都是字符数组。
2026-04-10 09:23:17
425
原创 strlen 和 sizeof 的核心区别
sizeof算内存大小(占多少字节),编译器算,不看内容strlen算字符串长度(有多少个字符),运行时算特性sizeofstrlen是什么运算符(不是函数)库函数算什么变量 / 类型占用的内存字节数字符串有效字符个数(不含\0看\0吗不看看到\0就停止计算时机编译时运行时。
2026-04-09 18:07:25
211
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅
4