自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 收藏
  • 关注

原创 栈、队列、数组与表达式转换:我的精简复习笔记

栈:后进先出,所有操作盯住栈顶。队列:先进先出,入队看 rear,出队看 front。循环队列:取模回绕,rear 追上 front 前一格就是满。二维数组:C 语言按行存,公式里乘列数。

2026-09-19 17:33:58 120

原创 C语言数据结构复习:顺序表与链表核心总结

线性表是一组具有前后顺序关系的数据。它只是一个逻辑结构。线性表├── 顺序存储 → 顺序表└── 链式存储 → 链表顺序表:数据在内存中连续存放链表:结点可以分散存放,用指针连接起来L│▼[哨兵节点]│ next▼这个指针现在指向谁?我要修改的是哪个 next?修改以后,后面的链还能不能找到?只要这三个问题能回答出来,大部分单链表代码就能自己推出来。

2026-09-11 18:45:29 170

原创 C语言链表中的二级指针(LNode**)理解笔记

LNode * p;含义:p是一个指针,保存一个LNode节点的地址。p↓| next |LNode↓一个节点LNode*↓一个节点的地址意思:一个指向LNode*变量的指针。LNode↓ 加 *LNode*↓ 再加 *LNode**

2026-08-06 16:53:11 169

原创 C语言:文件操作

从磁盘角度看,硬盘上的东西就是文件。程序文件:比如.c源文件、.obj目标文件、.exe可执行文件。数据文件:程序运行时要读写的数据文件,比如.txt.bin。本讲重点讨论的是数据文件。文件路径 + 文件名主干 + 文件后缀文件操作让我第一次感觉 C 语言程序不再只是“运行一下就结束”,而是可以和磁盘上的数据建立长期联系。文件通过流来操作,流通过 FILE* 来维护。读写函数会推动文件指针移动。缓冲区让文件写入不一定立刻发生,所以关闭文件非常重要。判断 fp 是否为 NULL。

2026-05-24 16:19:13 367 4

原创 C语言:结构体与内存对齐

C语言的结构体是一个极其强大且贴近底层的工具。声明注意防套娃,typedef用好全名。内存对齐是重中之重,牢记“自身对齐”和“整体大一统”。传参一律传指针。位段能省比特级空间,但千万别对它取地址。把这些潜规则摸透了,结构体在你手里也就是任你拿捏的软柿子了!希望这篇总结能帮到大家,如有错漏欢迎在评论区交流哦!

2026-05-19 14:11:06 488 12

原创 C语言:有关整数和浮点数在内存中存储

底层知识虽然枯燥,但一旦理顺了逻辑,会有种“豁然开朗”的快感。整数存的是补码(为了让加法器一统天下)。字节序记住小端=低低高高。浮点数存的是SEMS + E + MSEM,记住MMM藏了1,EEE加了127。希望这篇总结对正在学C语言的你有所帮助,我们下期见!

2026-05-19 10:11:52 401 1

原创 C语言进阶避坑指南:从整型提升到指针微操的那些“潜规则”

a + 1&a的类型是“数组指针”int(*)[4]。加1意味着跳过整个数组(直接向后跨越16个字节),到达数字4末尾的下一个位置。(int*)强转:这一步给指针换了“工牌”,抹去了它与数组的关联,它现在认为自己只是个普通的int*,指向了数字4之后的那块内存。ptr1[-1]的步长:它等价于。决定指针加减步长的,永远是该指针当前的“去向类型”。由于此时ptr1是int*,回退1步就只退回 4 个字节,正好稳稳地指回最后一个元素4。类型符号位数值位取值范围特点与用途1位7位。

2026-05-15 17:07:29 359 2

原创 C语言:彻底搞懂四大内存操作函数

memcpy虽然好用,但它是个“直肠子”。如果你让它拷贝的源空间和目标空间有任何的重叠,复制的结果都是未定义的!memmove。在模拟实现memmove时,核心策略是判断地址的高低从前向后拷贝(从低地址到高地址):当目标地址小于等于源地址,或者完全没有重叠时。从后向前拷贝(从高地址到低地址):当目标地址大于源地址且发生重叠时。这种逆向拷贝保护了尚未被拷贝的源数据不被提前覆盖。

2026-05-14 21:01:54 399 8

原创 C语言:全面总结字符与字符串函数

在敲C代码的过程中,尤其是在跟指针和底层内存死磕的时候,处理字符和字符串常常让人头疼。为了方便操作,C语言标准库中提供了一系列极其强大的库函数。今天我把刚学完的第17讲内容做了系统梳理,不仅有核心知识点,还总结了和。写成这篇博客,既是为了巩固知识,也希望能帮到一起学习C/C++的同学们!

2026-05-13 19:09:40 437 10

原创 C语言实战:从零手写经典扫雷游戏 (控制台版)

虽然这个控制台版本的扫雷略显简陋,但它完整闭环了游戏的核心逻辑。难度选择:加入中等(1616棋盘,40个雷)和困难(3016棋盘,99个雷)模式。递归展开:如果排查的位置周围没有雷,可以实现像原版那样“唰”地展开一大片空白区域。编程就是这样一步步搭积木的过程,继续加油!

2026-04-26 10:02:08 440 4

原创 C语言分支循环作业错题与心得

例题《打印100-200的素数》

2026-04-19 20:41:33 53 2

原创 C语言底层数据表示与内存基础笔记

最高位为符号位(0正1负),其余位为数值绝对值。500000101原+5 = [0000\ 0101]_原500000101原​−510000101原-5 = [1000\ 0101]_原−510000101原​正数反码与原码相同;负数符号位不变,数值位按位取反。−511111010反-5 = [1111\ 1010]_反−511111010反​正数补码与原码相同;负数补码 =反码 + 1。−511111011补。

2026-04-15 23:02:07 398 1

原创 26.4.7指针错题积累

【代码】26.4.7指针错题积累。

2026-04-07 23:19:29 54 1

原创 C语言中的strlen与sizeof

(上题中arr是一个字符数组,不是一个有效的字符串,因为后面没有放置’\0’,因此strlen在求解时,将有效字符检测完之后,还会继续向后检测,直到遇到’\0’是才终止,因此答案为不确定,就看紧跟在’t’之后的第一个’\0’在什么位置。strlen获取的规则非常简单:从前往后依次检测,strlen是用来获取。【答案打印随机的数】

2026-04-03 22:09:55 39 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除