自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 网络连接的三块基石:DHCP、ARP、DNS如何让您一键上网

DHCP是自动配置工,设备接入网络时,它提供所有必要参数ARP是地址翻译官,在IP地址和MAC地址间架起桥梁DNS是电话查询台,将人类友好的域名转换为机器IP它们的协同工作,对您完全透明。您只需要连接网络,剩下的交给协议。最后的重要建议普通用户保持"自动获取IP地址",不要手动配置需要固定IP时,在路由器设置IP-MAC绑定选择DNS时考虑实际需求,国内网站多用国内DNS理解这些协议,能帮您更好排查网络问题将复杂留给系统,将简单留给用户。这些协议默默工作,让您享受一键上网的便利。

2025-12-07 00:48:57 886

原创 网络通信的基石:彻底理解二层与三层,掌握VLAN和IP子网

本文深入解析了VLAN与IP子网必须匹配的原因。VLAN在数据链路层隔离广播域,而IP子网在网络层实现逻辑寻址。同网段不同VLAN会导致通信死锁,因为二层广播被VLAN阻断;仅用IP子网则无法隔离广播流量,存在安全隐患。二者协同工作:VLAN提供硬件级隔离,IP子网实现可控的跨VLAN路由。文章通过完整的数据包传输过程,展示了三层设备如何重写帧头实现跨VLAN通信,并强调IP地址保持不变而MAC地址和VLAN标签逐跳变化的原理。这种分层设计既确保了网络性能和安全,又提供了灵活的通信路径。

2025-12-02 23:33:32 686

原创 顺序表完全指南:从原理到实战的深度解析

本文系统讲解了顺序表的实现原理与核心操作,重点分析了位序与下标的转换关系(下标=位序-1)。详细阐述了插入、删除、查找等操作的边界条件:插入位序范围1~length+1,删除范围1~length。通过代码示例展示了顺序表的初始化、增删查改等操作实现,并总结了顺序表随机存取O(1)但插入删除O(n)的特性。文章最后给出了记忆口诀和调试技巧,强调先检查后操作的安全原则,帮助读者全面掌握这一基础数据结构。

2025-11-29 23:14:13 1043

原创 二叉树节点统计:递归策略的深度解析

本文对比了二叉树中叶子节点和度为2节点的递归统计方法,揭示了关键差异。叶子节点统计可直接返回1并终止递归,而度为2节点统计必须继续递归其子树。正确实现度为2节点计数需要:1)判断当前节点是否满足条件;2)无论当前节点状态如何都递归左右子树;3)累加当前计数和子树结果。根本区别在于叶子节点是递归终点,而度为2节点需要继续探索。文章强调递归完整性比简洁性更重要,并提供了通用递归模式,建议通过具体示例验证代码正确性。

2025-11-29 21:50:32 616

原创 一个printf引发的思考:-1为何变成255?揭秘C语言的整型提升与符号截断

学习C语言,就像学习一门内功心法,不仅要记住招式(语法),更要理解内力运行的原理(底层机制)。因此,为了代码的可移植性和清晰性,当我们明确需要符号时,应使用。是字符类型,顾名思义,它最初是用来存储字符(如‘A’,‘1’,‘!现在,让我们看看当数据在不同大小的“容器”间传递时,会发生什么。(signed char):符号扩展,提升为32位的-1。(signed):符号扩展,提升为32位的-1。,那么恭喜你,你的直觉是符合人类思维的。的高24位,只保留最低的8位,然后放进。这个32位的补码,代表的整数依然是。

2025-11-15 12:26:57 666 1

原创 插入排序(C语言实现):从单元素插入到完整排序的逻辑拆解

本文详细讲解了插入排序算法的工作原理和实现方法。插入排序通过将数组分为已排序和未排序两部分,每次从未排序部分取出元素插入到已排序部分的正确位置,最终完成排序。文章首先以单元素插入为例,展示如何将新元素插入已排序数组;然后扩展到完整排序过程,通过C语言代码详细解析了算法实现。插入排序时间复杂度为O(n²)(最坏情况),空间复杂度O(1),具有稳定性和原地排序特性,适合小规模或近似有序数据。文章通过扑克牌排序的类比和逐步代码解析,帮助读者深入理解这一基础排序算法。

2025-08-08 23:15:27 1234

原创 选择排序——C语言

在选择排序中max初始的时候是假设一个值,但是我们假设的这个max值应该存在未排序区中也就是在循环内部直接写int max=i; -----------豪哥2025.8.2 台风天。

2025-08-02 17:55:22 1068

原创 斐波那契数列的表示——C语言

宏定义N:使用#define定义常量N=20,表示需要计算和输出20项优点:需要修改项数时只需改这一处数组声明:创建长度为N的long类型数组fib使用long类型防止大数溢出(虽然前20项不会溢出)初始化{1, 1}显式设置前两项剩余元素自动初始化为0(但后续会被覆盖)

2025-06-28 16:31:35 1256

原创 如何使用函数传参来实现两个数的交换?易错点分析

此时编译器只是记录函数签名。

2025-05-29 23:00:37 598

原创 用指针数组实现字符串排序

指针数组是C语言中存储指针的数组,每个元素都是内存地址。常见错误包括:1)未初始化指针导致未定义行为;2)错误交换指针而非字符串内容;3)所有指针指向同一内存导致数据覆盖。正确使用需要:1)明确定义数据类型*数组名[长度];2)注意与数组指针(char(*ptr)[N])的区别;3)排序时应交换指针地址而非内容。典型应用场景包括字符串排序,通过指针数组调整指向顺序而非移动实际数据可提高效率。使用时需确保每个指针指向有效内存区域。

2025-05-27 00:11:53 1119 1

原创 C语言的标准输入输出总结

本文总结了C语言中常见输入输出函数的使用要点。scanf()读取字符串时会跳过前导空白,而%c会读取所有字符;printf()遇到\0会终止输出。getchar()逐个读取字符(含空格),常用于清理输入缓冲区。fgets()安全读取含空格的字符串并自动添加\0,需注意换行符处理;puts()输出字符串并自动换行。特别强调已被废弃的gets()存在缓冲区溢出风险,绝对不要使用。文章通过代码示例演示了各函数的特性及常见问题解决方案,尤其对输入缓冲区的处理技巧进行了详细说明。

2025-05-24 23:00:33 1374

原创 在冒泡排序中(i,j从0开始)与(i,j从1开始)的区别

【代码】在冒泡排序中(i,j从0开始)与(i,j从1开始)的区别。

2025-04-18 17:48:45 194

原创 在递归中使用前置++ 后置++传参,可能出现的问题

注意,在前置++里面,++以后的str,会先保存在原本的栈帧,然后再复制拷贝到新栈帧,也就是调用函数所产生的新栈帧。同时,tmp先不填充进去的时候,我们还要在每次递归的时候,对于f—e—d,依次填充为\0,来保证我们求的长度准确。,用来存放它里面的元素,所以每次调用函数的时候,tmp,保存在不同的位置,他们之间并不会覆盖冲突。在第二次的时候,f—bcdea,我们并不是让b和a换位置,我们在求长度的时候,是要把a舍去的。注意,在str+1里面,每个str,本身的值不会变,只是会用str+1,来进行传参。

2025-02-12 22:28:46 659

原创 字符串逆序(递归实现)

答案并不会,我们每次调用函数,都会分别为它创建一个栈区,用来存放它里面的元素,所以每次调用函数的时候,tmp,保存在不同的位置,他们之间并不会覆盖冲突。同时,tmp先不填充进去的时候,我们还要在每次递归的时候,对于f—e—d,依次填充为\0,来保证我们求的长度准确。while循环,定义一个变量count,数组里面的元素,如果不是\0,就让count+1,最后返回count。逆序之后数组的内容变成:fedcba。在第二次的时候,f—bcdea,我们并不是让b和a换位置,我们在求长度的时候,是要把a舍去的。

2025-02-09 23:30:43 361

原创 C语言小游戏——猜数字

这个循环是一开始要直接进入的,让玩家一开始就可以选择,所以我们选用了do while循环,条件是input,同时,因为非零为真,零为假,所以玩家如果没有输入0,主动退出游戏的话,程序是不会结束的。并且我们的srand函数只能引用一次,因为如果我们一秒内猜测了两次数,此时srand函数种子值来不及变,就会导致伪随机数序列也是相同的,也就是每局游戏的数字都是相同的。就是每一次的随机数序列都是一样的,而且刚输出完序列中的第一个数,这个种子值就马上刷新为一个相同的数,也就导致了 每一次输出的随机数都是一样的。

2024-12-23 23:41:41 561

原创 给未来自己的一封信

后来,来了大学读了机械专业,学校没有生物专业,但又不想放弃自己曾经热爱的东西,就想转专业到计算机,想着以后可以从计算机跨考到生物信息学,想着搞交叉领域更能有所突破,不过,这一切真的道阻且长。不知道现在的你是否还坚持着当年的理想,记得中学阶段的你是很喜欢生物这个学科的,常常对某些小细节钻研半天,沉浸于这种发现问题,并且钻研半天后了解问题本质的成就感。对了,你还记得,你当初很想去的那所大学吗,哈哈,虽然18岁那年没有去成,所以有点遗憾,但我期望,你能在20出头的年纪去弥补你18岁那年留下的遗憾。

2024-11-23 22:26:13 289

空空如也

空空如也

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

TA关注的人

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