自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【C++】string的使用

本文主要介绍了C++中string类的使用。

2025-11-19 17:13:42 755

原创 【数据结构】二叉树

本文介绍了二叉树链式结构的基本实现和操作。首先通过手动创建简单二叉树来降低学习成本,然后详细讲解了三种遍历方式(前序、中序、后序)的递归实现及执行过程。接着阐述了四个关键操作:计算二叉树节点个数(递归累加左右子树节点)、求叶子节点个数(判断左右子树为空)、计算二叉树高度(比较左右子树高度取最大值)以及求第k层节点个数(递归递减k值)。特别强调了在计算高度时保存中间结果的重要性,避免重复计算导致效率低下。这些基础操作为二叉树的进一步应用奠定了重要基础。

2025-11-08 11:58:05 1153

原创 【C++】模板初阶+STL简介

C++模板是泛型编程的基础,通过模板可以实现与类型无关的通用代码。函数模板通过参数化类型生成特定版本函数,解决代码复用问题;类模板则用于生成泛型类。STL作为标准模板库,包含六大组件,是笔试面试的重要内容。学习STL需要结合实践,掌握其设计思想和使用方法。模板的出现使C++真正实现了质的飞跃,成为现代编程的重要工具。

2025-11-05 16:28:37 960

原创 【C++】内存管理

本文探讨了C/C++中的内存分布与管理机制。首先通过代码示例分析了变量在不同内存区域(栈、堆、数据段、代码段)的存储位置,重点区分了全局变量、静态变量和局部变量的存储差异。其次详细介绍了C++的new/delete操作符,对比其与malloc/free的区别,特别是new会自动调用构造函数/析构函数的特性。文章还解析了operator new/delete的底层实现原理,说明它们本质是通过malloc/free进行内存管理,但新增了异常处理机制。最后总结了内置类型和自定义类型在使用new/delete时的不

2025-11-04 14:49:43 1675 7

原创 【C++】类和对象(下)

万字详解深入探讨构造函数,类型转换,static成员,友元,内部类,匿名对象,对象拷贝时的编译器优化

2025-11-01 14:39:54 814 4

原创 【C++】类和对象(中)

两万字超详细讲述类的默认成员函数,包括构造函数,析构函数,拷贝构造,赋值重载,取地址重载等,还有运算符重载和const成员等内容,以及日期类的实现

2025-10-30 09:19:07 729 2

原创 【C++】类和对象(上)

本文主要介绍了C++中类和对象的基础知识。首先阐述了面向过程与面向对象的区别,强调C++通过类将属性和方法封装为对象。在类定义部分,详细说明了类的基本格式、访问限定符(public/protected/private)的作用及类域的概念。随后解释了实例化的含义,指出类定义时成员变量仅是声明,实例化时才会分配物理内存空间。最后讨论了对象大小的计算规则,指出不同对象共享成员函数地址而无需在每个对象中存储,对象大小仅由成员变量决定并遵循内存对齐原则。全文通过代码示例和通俗比喻,帮助读者理解C++类和对象的核心概念

2025-10-26 18:26:09 1251 12

原创 【C++】初识C++(万字超详细一遍过基础)

本文简要介绍了C++的发展历史和重要性,展示了C++在编程语言排行榜中的位置及其广泛应用领域。通过第一个"Hello World"程序示例,对比了C++与C语言的语法兼容性。重点讲解了命名空间(namespace)的概念及其三种使用方法,解释了其在解决命名冲突中的作用。随后介绍了C++的输入输出流操作符(cin/cout)和缺省参数的使用规则,包括全缺省和半缺省参数的语法要求。全文为C++初学者提供了基础语法入门知识,涵盖了核心编程概念。

2025-10-25 20:05:12 1046 1

原创 【数据结构】堆

本文介绍了堆数据结构及其相关概念。首先讲解了树的基本概念和术语,包括节点度、层次、深度等。重点介绍了二叉树的两种特殊形式:满二叉树和完全二叉树。堆本质上是一个完全二叉树,具有父节点值总是大于/小于子节点值的特性。文章详细解析了堆的实现方法,包括使用顺序表存储、关键接口函数(初始化、销毁、判空等)以及核心算法——向上调整和向下调整。其中,向上调整用于插入数据时维护堆结构,向下调整用于删除堆顶数据时保持堆特性。特别强调了堆的数学关系:父节点i与子节点2i+1/2i+2的对应关系。最后给出了堆排序的实现思路。

2025-10-18 20:08:23 1475

原创 【数据结构】栈和队列

本文介绍了栈和队列两种常见的数据结构及其实现方式。栈是一种后进先出(LIFO)的线性表,支持压栈和出栈操作,通常使用数组实现更优;队列是一种先进先出(FIFO)的线性表,支持队尾插入和队头删除,更适合用链表实现。文章详细阐述了两种数据结构的概念、实现方法及各主要操作接口(初始化、销毁、插入、删除、判空等)的代码实现,并通过测试验证了各功能的正确性。对于栈,重点说明了栈顶指针初始化位置的选择逻辑;对于队列,则解释了使用双结构体定义的必要性。

2025-10-16 17:57:26 1210

原创 【数据结构】单链表

本文介绍了链表的基本概念和结构实现。链表是一种非连续存储结构,通过指针链接实现数据元素的逻辑顺序。文章详细阐述了单链表的实现方法,包括节点结构体定义、创建新节点函数,以及各种操作接口的实现,如尾插、头插、尾删、头删、查找、指定位置插入/删除等。每个操作都配有代码实现和测试示例,展示了链表动态增删节点而不影响其他节点的特性。通过指针变量串联各节点,实现了高效的数据组织方式。

2025-10-13 15:48:18 539

原创 【数据结构】顺序表

本文介绍了线性表的基本概念和顺序表的实现方法。线性表是由相同特性数据元素组成的有限序列,逻辑上连续但物理存储不一定连续。重点讲解了动态顺序表的结构定义和11个核心接口函数的实现,包括初始化、销毁、扩容检查、增删改查等操作。通过C语言代码示例展示了每种接口的具体实现,并提供了测试验证方法。文章强调了数据结构设计中考虑全面性和封装接口的重要性,帮助读者理解顺序表的基本原理和实现细节。

2025-10-11 17:07:19 643

原创 动态内存管理

本文介绍了C语言中动态内存分配的必要性及相关函数。动态内存分配弥补了静态内存分配固定大小的缺陷,使程序运行时能灵活申请和释放内存空间。重点讲解了malloc、free、calloc和realloc函数的使用方法及注意事项,包括内存检查、初始化和正确释放。同时列举了常见的动态内存错误,如解引用空指针、越界访问、错误释放等,并强调内存泄漏的风险。合理使用动态内存分配能提升程序灵活性,但需谨慎操作以避免内存问题。

2025-09-30 17:26:29 865

原创 自定义类型:联合和枚举

本文介绍了C语言中的联合体和枚举类型。联合体(共用体)的特点是所有成员共用同一块内存空间,大小至少是最大成员的大小,且可能存在内存对齐。通过代码示例展示了联合体的内存布局特点。枚举类型用于列举有限取值,默认从0开始递增,也可手动赋值。相比#define定义常量,枚举具有类型检查、可调试、作用域规则等优势。文章还通过礼品兑换单的案例,展示了联合体在节省内存空间方面的实际应用,并介绍了利用联合体判断系统大小端的方法。

2025-09-21 12:34:37 472

原创 自定义类型:结构体

本文主要介绍了C语言中结构体的基本概念和使用方法。内容包括:1) 结构体类型的声明方式及变量初始化;2) 结构体的特殊声明(匿名结构体)和自引用问题;3) 结构体内存对齐规则及计算示例;4) 修改默认对齐数的方法;5) 结构体传参的最佳实践。重点讲解了内存对齐的原理和计算方式,强调了结构体设计时考虑内存布局的重要性,并建议在传参时使用指针而非整个结构体以提高性能。文章通过多个代码示例详细说明了相关概念和注意事项。

2025-09-16 18:15:38 878

原创 【C语言】数据在内存中的存储

本文主要介绍了C语言中数据在内存中的存储方式。首先讲解了整数的三种二进制表示方法(原码、反码、补码)及其转换规则,说明计算机中存储的是补码。通过实例分析了char类型变量在内存中的存储和整型提升过程。其次介绍了大小端字节序的概念及判断方法,并给出了两种判断程序。最后详细解析了浮点数的存储规范IEEE 754,包括符号位、指数位和有效数字位的处理方式,并通过代码示例展示了浮点数和整数的不同解析结果。全文深入浅出地解释了不同类型数据在内存中的存储机制。

2025-09-15 13:14:50 999

原创 【C语言内存函数】

讨论memcpy,memmove,memset,memcmp等函数的用法细节及个人的一些模拟

2025-09-14 11:14:58 431

空空如也

空空如也

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

TA关注的人

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