自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Linux初识:基础指令

摘要:本文为Linux新手整理了入门必学基础指令,涵盖导航与文件操作两大核心场景。导航指令含pwd(显示当前目录)、ls(列出目录内容)、cd(切换目录),助新手摸清系统“地形”;文件操作指令包括touch(创建空文件)、cat(查看文件内容)、rm(删除文件/目录)、mkdir(创建目录),搭配实用参数可满足基础操作需求。文中强调了指令大小写区分、参数使用等注意事项,附加Tab补全、历史指令查看等技巧。掌握这些指令并勤加练习,即可应对Linux基础操作场景,为后续深入学习筑牢根基。

2026-01-27 07:00:00 498 2

原创 C++必学系列:STL中的list容器

本文聚焦C++ STL中的list容器,解析其基于双向循环链表的底层实现,节点非连续存储的特性造就了其核心优势与局限。优势在于任意位置插入删除高效(O(1))、迭代器稳定、内存管理灵活且支持双向遍历;局限为不支持随机访问、空间开销略大、缓存命中率低。文章还介绍了初始化、遍历、排序等常用操作,给出场景化选型建议,提醒迭代器失效、排序适配等避坑点,助力开发者精准选型,深化对数据结构与算法效率关联的理解。

2026-01-20 06:00:00 581 1

原创 C++ 必学系列:STL vector 函数

本文详细解析 C++ STL 中 vector 容器的核心函数及使用方法,涵盖基础初始化、增删改查核心操作、reserve () 等进阶函数,结合实例说明各函数用法与性能差异。重点梳理迭代器失效、扩容机制等关键注意事项,通过实战案例演示函数综合应用。旨在帮助开发者掌握 vector 高效使用技巧,明确其 “频繁访问、尾部增删” 的适用场景,提升代码编写效率与性能。

2026-01-04 07:00:00 851

原创 C++必学系列:string的模拟实现

本文聚焦STL string的底层实现逻辑,从零构建了一个功能完备的简易版string类。首先明确string的核心结构为动态字符数组,包含_str、_size、_capacity三大核心成员变量;随后逐步实现了构造、拷贝、赋值、析构等生命周期管理接口,迭代器接口,插入、删除、替换、尾插等字符串修改接口,以及比较、查找、截取等实用接口;同时通过完整的测试用例验证了各功能的正确性。整个实现过程深入实践了动态内存管理、深拷贝设计、STL迭代器约定等C++核心知识点,揭示了string类高效操作的底层原理。

2025-12-30 07:00:00 1349 1

原创 C++ STL string 全面解析:从基础到常用函数实战

本文全面解析C++ STL string类,指出其作为动态字符数组,具备动态内存管理、丰富成员函数、安全访问及兼容C语言的核心优势,可规避C语言字符数组痛点。文中重点梳理初始化赋值方式,及size()、+=、find()、replace()等常用核心函数,搭配示例与实战案例助于理解。建议开发中优先使用string减少内存管理负担,提升代码可读性与安全性。掌握该类需动手实践,其仍是字符串处理的基础核心工具。

2025-12-25 06:30:00 545 2

原创 C++必学系列:模板到底该怎么来用?

本文聚焦 C++ 模板的实用用法,从核心概念出发,详解函数模板与类模板的语法、实现及使用场景。通过求最大值、通用栈等示例,展现模板 “参数化类型” 实现代码复用的核心优势,同时梳理类型适配、实例化机制等注意事项与常见误区。结合通用排序实战练习,帮助读者掌握模板使用逻辑。文章强调模板是编译期通用代码工具,理解实例化是关键,掌握后可提升代码效率并读懂 STL 容器,学习需结合实践避免过度设计。

2025-12-23 06:30:00 1777 1

原创 C++必学系列:手动内存管理指南

本文聚焦 C++ 手动内存管理核心知识,先解析内存五大分区(栈、堆、全局 / 静态存储区等)的特点与用途,再详解 new/delete 的基本用法、底层逻辑,重点梳理内存泄漏、野指针等常见错误。后续给出实践避坑建议,强调优先使用栈内存、严格匹配 new/delete 等原则。总结指出,明确内存分区与掌控生命周期是核心,遵循规范可平稳应对基础内存管理需求,为后续学习智能指针铺垫

2025-12-21 07:00:00 850 1

原创 C++类和对象:从概念到实践,轻松掌握核心

本文系统阐释 C++ 类与对象的核心概念及实践逻辑,明确类是封装数据成员与成员函数的抽象模板,对象是类的具象实例及可操作内存实体。依次讲解类的定义规范、访问权限修饰符、声明与实现分离机制,对象实例化方式与成员访问规则,以及封装特性的实现范式与核心优势。同时辨析内存分配、访问控制等常见误区,总结类与对象作为面向对象编程基础的核心要点,为继承、多态等高级特性学习奠定基础。

2025-12-20 19:36:40 816 1

原创 从C平滑过渡到C++:入门者必看的初识指南

本文面向 C 语言开发者,助力其平滑过渡初识 C++。首先点明 C++ 作为 C 语言超集的兼容性优势,介绍其从.c 到.cpp 后缀的简单转换方法及 cout 等基础替代语法。核心讲解类与对象、封装、函数重载三大 C++ 基础特性,对比 C 语言凸显其优势。给出复用 C 知识、突破核心特性、培养对象化思维的过渡技巧。强调初识关键是打破过程式思维,后续将深入讲解更多进阶内容。

2025-12-19 06:00:00 580

原创 一篇搞懂8种排序算法的C语言实现与原理

本文系统梳理了插入排序、希尔排序、选择排序、冒泡排序、快速排序、归并排序、堆排序、基数排序八大经典排序算法。首先从平均/最好/最坏时间复杂度、空间复杂度、稳定性、排序类型、核心思想及适用场景七大维度构建对比表格,清晰呈现各算法特性差异;随后提供了各算法升序排序的C语言核心实现代码,保留关键逻辑并简化冗余部分,便于开发者直接参考使用;最后对算法进行性能梯队划分,明确基于数据规模、稳定性需求、空间限制及数据初始状态的选型依据,并给出实际开发中的常用算法组合建议。文档旨在为开发者提供全面的排序算法参考助力

2025-12-17 06:00:00 1027

原创 C语言数据结构树与二叉树:从概念到代码全拆解

本文是面向有 C 语言基础的读者的树与二叉树入门指南,聚焦用 C 语言实现树结构的核心知识与实战操作。首先梳理树与二叉树的基础概念、关键术语及特性,再讲解二叉树节点的结构体定义这一实现基础。重点拆解核心操作,包括节点创建、手动与自动构建二叉树,前序 / 中序 / 后序的递归与非递归遍历,以及求树的深度、统计叶子节点数等实用功能,提供完整可运行代码。同时总结新手常见问题与避坑技巧,并给出后续学习建议,助力读者快速掌握树结构的 C 语言实现。

2025-12-16 06:00:00 563 3

原创 C语言数据结构入门:栈与队列的概念解析及实战实现

本文聚焦C语言数据结构入门知识,详解栈与队列两种基础线性数据结构。栈遵循“先进后出”特性,队列遵循“先进先出”特性,文中结合生活实例阐释二者核心概念与关键操作。重点以数组实现方式,手把手讲解栈的初始化、入栈、出栈等操作,以及循环队列(解决假溢出问题)的定义与核心功能实现。同时提及数组实现的局限与链表实现的进阶方向,介绍二者经典应用场景,助力初学者快速掌握栈与队列的原理及C语言实战技巧。

2025-12-15 06:30:00 1728

原创 一文搞懂C语言链表与顺序表:核心差异与实用场景

本文聚焦C语言中线性表的两种核心实现方式——顺序表与链表,以“存储是否连续”为核心切入点,系统解析二者的本质差异。顺序表基于连续内存存储(即数组),支持随机访问(时间复杂度O(1)),但插入、删除需移动元素(时间复杂度O(n)),适合频繁下标访问、元素个数较固定的场景;链表依托不连续内存节点与指针连接,不支持随机访问(访问需遍历,时间复杂度O(n)),但插入、删除仅需调整指针(时间复杂度O(1)),适配频繁增删、元素个数动态变化的场景。文章还通过结构定义、核心操作示例对比二者特性,并给出实战选择建议

2025-12-14 06:15:00 1554

原创 一文吃透C语言文件操作:从基础原理到实战避坑全指南!

本文聚焦C语言文件操作核心知识,旨在帮助开发者攻克数据持久化过程中的常见难题。首先阐述文件操作的基础概念,包括文件分类、文本与二进制文件的存储差异、流与标准流的作用;接着详解文件操作的核心流程,涵盖文件指针的本质、fopen/fclose函数的用法及不同打开模式的选择;随后深入剖析文件读写操作,对比顺序读写(fgetc/fputc、fscanf/fprintf等)与随机读写(fseek/ftell/rewind)的实现逻辑并提供实战案例;最后总结文件操作的避坑要点,包括正确判定文件读取结束、重视缓冲区刷新及

2025-12-11 20:45:11 813 7

原创 内存管理函数详细讲解

对话围绕计算机内存展开,先讲解C语言堆内存管理函数(malloc/calloc/realloc/free)的形式、用法及坑点,再详述内存核心区域(代码区、常量区、全局/静态区、堆区、栈区等),用通俗语言说明各区域存储内容与用途,还涉及内存对齐、碎片化等深层概念及常见错误避坑。

2025-12-10 18:32:11 789

原创 C语言程序的内存处理函数:深入理解与实践

C语言提供了4个核心内存处理函数:1) memcpy - 高效内存拷贝,但无法处理重叠区域;2) memmove - 可安全处理内存重叠的拷贝;3) memset - 快速初始化内存(适合清零);4) memcmp - 逐字节比较内存内容。这些函数都定义在<string.h>中,使用时需注意参数类型匹配、内存边界检查和返回值处理。memcpy/memmove需确保目标空间足够,memset按字节赋值,memcmp比较首个差异字节。掌握这些函数能显著提升内存操作效率。

2025-12-09 18:21:49 654 3

原创 来看看结构体的好兄弟---位段,什么是位段?

位段和结构体非常的像,结构差不多我们在题目中要注意区分,我们来看看位段是什么。和结构体的区别有什么不一样,位段不需要我们熟记于心,但是我们在刷题目的时候如果遇到了希望大家不要惊慌,理解位段的基本原理,仔细的去分析,认识位段,区分他和结构体的区别,在特殊的情况下可以运用位段。好好加油!!!

2025-04-22 22:27:25 396

原创 全网最详细的字符函数和字符串函数,快来看看,你真的会了吗?

+ 是自增运算符, src++ 这种后置自增形式,首先会返回 src 当前所指向的值,然后再将 src 的值(即指针所指向的内存地址)增加(一般是根据所指向数据类型的大小增加,比如指向 char 类型数据,地址增加 1 个字节;,这里说明一下,因为我们的strcmp是返回一个>和<和=的数,所以我们就用他们的差返回就可以了,这里我们有多多记忆,strcmp的模拟是最重要的,到时候在我们的排序中我们也要用的,如qsort的compare,.....希望大家可以去代码实现一下,练习一下。

2025-04-04 00:49:20 842 1

原创 结构体的内存对齐规则,你真的知道吗?快来看看

我们来看看,double是8,对齐数是8,所以我们选择最小的数8,因为double是第一个,根据规则一:必须存放在偏移量为0的位置,所以在第一位,接着看char 是1,对齐数是8,所以他存放在1的倍数的位置,存放在d的后面,看int,int是4,我们根据规则规则二:所以int要放在地址为4的倍数的地方,就是12,我们放下4个,看看整个结构体的大小现在为16,根据规则三:在8,4,1 中选择最大数为8,整个结构体的大小要为8的倍数,所以刚刚好,黄色的就是我们浪费的空间。的地址处,也就是结构体的首位。

2025-03-30 21:27:17 427

原创 什么是结构体?聊聊我认识的结构体

当我们要建立一些不同类型的数据时我们可以用结构体如复数的imag和real;通过结构体来实现一些复杂的操作;同时可以理解(*p).name==p->name;2.也可以通过结构体指针来操作用(->)访问成员 结构体指针->结构体成员名;

2025-03-27 23:36:22 332

原创 C语言学习理解

发现行和列的关系:第一行有一列,第二行有二列,即行和列相同。同时n行中的数都小于等于n。注意循环的嵌套,和printf(“\n“);放的位置,定义i和j,和2个for循环的作用。运用循环来创造一个九九乘法口诀。

2024-11-17 17:14:40 183

原创 c语言对我的影响

我是一个大学生,刚刚步入大学,我很喜欢大学,他可以给我们很多的时间自己安排,当开始学习接触c语言时,我非常震撼,原来可以通过写一些特定的文字代码,而使电脑为我而工作,我开始感到浓厚的兴趣。我已经开始学习c语言了,我想用csdn来记录我的成长,也希望可以在csdn中看看大佬们眼中的计算机。

2024-10-27 16:00:41 172

空空如也

空空如也

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

TA关注的人

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