自定义博客皮肤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)
  • 收藏
  • 关注

原创 那些关于C语言内存函数的故事

本文介绍了C语言中几个重要的内存操作函数及其模拟实现方法。首先讲解了memcpy函数的基本使用和模拟实现,它能实现任意数据类型的拷贝。接着介绍了memmove函数,它与memcpy的区别在于能处理内存重叠的情况,并给出了模拟实现。然后展示了memset函数的使用,它可以按字节设置内存值。最后讲解了memcmp函数,它能比较两个内存区域的内容。通过代码示例和运行结果,清晰地演示了这些函数的具体应用场景和实现原理,为理解C语言内存操作提供了实用参考。

2025-12-22 16:40:51 538

原创 那些关于字符函数和字符串函数的故事

本文介绍了C语言中常用的字符和字符串处理函数,包括字符分类函数(如isdigit、islower等)、字符转换函数(tolower、toupper)、字符串长度计算(strlen)、字符串拷贝(strcpy)、字符串连接(strcat)和字符串比较(strcmp)。文章详细说明了每个函数的功能、参数要求和使用注意事项,并提供了模拟实现的代码示例。通过这些函数的学习,可以帮助开发者更高效地处理字符和字符串操作,提升编程效率。

2025-12-21 14:07:16 533

原创 那些关于指针的故事(6)

指针与数组操作总结 本文深入探讨了指针和数组的相关概念,重点分析了sizeof和strlen的区别及应用场景: sizeof与strlen对比 sizeof是操作符,计算内存空间大小,不关心数据内容 strlen是库函数,统计字符串长度,依赖\0终止符 数组操作解析 通过一维数组和字符数组示例,详细演示了不同操作方式下sizeof的计算结果 特别指出数组名单独出现在sizeof中和与其他运算符结合时的不同含义 重要注意事项 指针运算的类型敏感性 数组边界和内存访问安全问题 地址计算与解引用的区别 本文通过具

2025-11-27 09:14:30 881

原创 那些关于指针的故事(5)

本文介绍了指针在回调函数和qsort排序中的应用。首先通过计算器案例展示了回调函数的实现方式,即通过函数指针调用目标函数。然后详细讲解了qsort函数的使用方法,包括其参数解析和比较函数的编写规则。文章通过两个实例演示了qsort的应用:对整型数组进行排序时,比较函数直接返回元素差值;对结构体数组按年龄排序时,需要先进行类型转换再访问成员变量。这些案例展示了指针在高级函数调用和通用排序算法中的关键作用。

2025-11-24 18:57:02 1304

原创 那些关于指针的故事(4)

摘要 本文深入探讨了C语言中指针的高级应用。第一部分分析了字符指针变量(char*)的两种使用方式,重点解释了常量字符串的存储机制,并通过《剑指offer》中的例题展示了字符串地址比较的差异。第二部分讲解了数组指针的定义、初始化方法及其与指针数组的区别。第三部分揭示了二维数组传参的本质,说明形参可以写成数组或指针形式。最后详细介绍了函数指针变量的创建、解引用方法,并解析了两段复杂的函数指针代码。文章还提及了typedef关键字简化复杂类型声明的作用,为读者提供了全面理解指针高级用法的视角。

2025-11-21 20:37:04 1109

原创 那些关于指针的故事(3)

本文深入探讨了指针在数组操作中的关键作用。首先分析了数组名的本质,指出数组名在大多数情况下表示首元素地址,但存在两种例外情况。接着讲解了通过指针访问数组的方法,包括指针偏移和数组下标访问的等价性。文章重点讨论了一维数组传参的本质,指出传递的实际上是首元素地址而非整个数组。此外,详细介绍了冒泡排序算法及其优化策略,通过设置标志位减少不必要的比较。最后探讨了二级指针和指针数组的概念,并展示了如何使用指针数组模拟二维数组的访问方式。这些内容为深入理解指针在数组操作中的应用提供了全面的视角。

2025-11-15 18:38:49 1253

原创 那些关于指针的故事(2)

本文《关于指针的故事(2)》主要讲解了野指针的危害与防范措施。首先解释了野指针的三种成因:未初始化、越界访问和指向释放的空间。然后详细介绍了规避野指针的方法,包括指针初始化、防止越界、及时置NULL以及避免返回局部变量地址。接着介绍了assert断言的使用技巧及其优缺点。最后通过模拟strlen函数实现和数值交换案例,对比演示了传值调用和传址调用的区别。全文通过代码示例生动展示了指针的安全使用规范,为后续指针的深入学习打下基础。

2025-11-13 23:33:39 957

原创 那些关于指针的故事(1)

本文介绍了计算机内存管理的基本原理与C语言指针的概念。首先通过宿舍楼房间号的类比,解释了内存编址的必要性和工作原理。然后详细阐述了指针变量的定义、取地址操作符(&)和解引用操作符(*)的使用方法,以及不同类型指针变量的区别。特别强调了指针变量的大小在不同平台下的差异(32位系统4字节,64位系统8字节),以及指针类型对解引用操作和指针运算的影响。文章还解释了硬件层面的地址总线工作原理,帮助读者理解CPU如何通过地址访问内存数据。通过这些内容的讲解,读者可以建立起对计算机内存管理和指针基础概念的清晰认

2025-11-06 00:07:11 1019

原创 那些关于操作符的故事(2)

本文介绍了C语言中的结构体与操作符属性。首先详细讲解了结构体的声明、定义和初始化方法,以及结构成员访问操作符(.)的使用。接着阐释了操作符的两个关键属性:优先级决定运算顺序,结合性处理同级运算符的计算顺序。最后探讨了表达式求值中的整型提升机制和算术转换规则,说明了不同类型操作数间的转换层次。文章还提供了常用操作符的优先级表格,帮助开发者正确理解和使用C语言操作符。

2025-11-01 23:57:06 1095

原创 那些关于操作符的故事(1)

本文介绍了编程中操作符的基础知识。首先解释了整数的三种二进制表示方式:原码、反码和补码,说明计算机存储数据使用补码形式。接着详细讲解了移位操作符(左移和右移)及其运算规则,并指出右移方式取决于编译器。然后介绍了四种位操作符:按位与、或、异或和取反,通过实例展示了它们的运算过程。文章还通过面试题展示了位操作符的实际应用,如不借助临时变量交换两个数的方法。最后简要提及单目操作符和逗号表达式。全文通过代码示例和图示,深入浅出地讲解了操作符的底层原理和使用技巧。

2025-10-29 23:10:58 1468

原创 计算机的核心基础:二进制的初步理解

二进制的初步理解

2025-10-26 16:18:19 419

原创 做代码的医生(VS的调试技巧)

VS实用调试技巧分享

2025-10-26 00:43:48 921

原创 数组练习——二分查找(C#基础)超级详细!!

二分查找法(Binary Search)是一种高效的查找算法,适用于在有序数组中快速定位目标元素。其核心思想是通过不断缩小查找范围,将问题规模减半,从而实现对数级别的时间复杂度。

2025-10-23 00:05:39 327

原创 第一份博客

你好。

2025-10-20 15:35:36 238

空空如也

空空如也

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

TA关注的人

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