自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【Linux】磁盘存储+文件系统简介

理解磁盘是由盘片、磁头、磁道和扇区组成的硬件设备,数据以扇区(512B)为最小单位存储,可通过CHS(柱面-磁头-扇区)或LBA(逻辑块地址)寻址。操作系统将磁盘视为一维块数组(通常4KB/块),并通过分区和分组管理文件。文件系统将文件内容与属性分开存储,以块为单位读写,从而高效访问数据。简言之,磁盘被抽象为线性块设备,文件系统通过分区、块管理和寻址机制实现数据存储与访问。

2025-08-01 19:17:39 868

原创 【C++】多态详解

通俗来说,多态就是同一个函数多种形态。多态分为编译时多态(静态多态)和运⾏时多态(动态多态)

2025-07-13 12:06:41 1015

原创 【C++】继承详解

继承呈现了⾯向对象程序设计的层次结构,体现了由简单到复杂的认知过程。以前我们接触的函数层次的复用,继承是类设计层次的复用。

2025-07-09 16:15:03 611

原创 【Linux】文件基础简介

本文主要对文件基础IO进行介绍,理解文件打开的本质。

2025-07-09 15:16:54 939

原创 【C++】deque和优先级队列

Deque 既不是简单的“一大段数组”(避免浪费),也不是链表(避免碎片化),而是通过分块策略在内存效率和操作效率之间取得平衡。

2025-06-30 09:41:25 621

原创 【C++】list容器实现

list 类的成员变量通常是一个节点类型的头指针(_head)指向链表的首节点,通过不断插入节点和更改指针之间指向形成一个链表结构,而每个节点是一个独立单元,通常包含:数据部分(存储元素值)、前驱指针、后继指针,在 C++ 实现中,节点用类实现。

2025-06-15 20:31:40 1001 1

原创 【Linux】进程创建、终止、等待、替换

在linux中fork函数是非常重要的函数,它从已存在进程中创建⼀个新进程。新进程为子进程,而原进程为⽗进程。

2025-06-13 22:48:33 979

原创 【Linux】进程虚拟地址空间详解

每个进程都有一个独立的 struct mm_struct,它描述了该进程的整个虚拟内存布局,包括代码段、数据段、堆、栈、内存映射区域等。

2025-06-03 16:38:57 1001

原创 【C++】vector容器实现

​vector学习时一定要学会查看文档https://cplusplus.com/reference/vector/vector/,vector在实际中非常的重要,我们熟悉常见的接口就可以。​

2025-05-21 20:59:02 1431

原创 【Linux】命令行参数和环境变量

环境变量大部分从系统配置文件来,也有少部分是启动之后动态获取或创建

2025-05-18 16:55:28 752

原创 【C++】String类

string类虽不属于STL容器中的一种,但string类的学习有助于接下来STL容器学习,也是程序员面试考察中的一环,学string类对后期做算法题非常有帮助。

2025-05-14 13:52:42 856

原创 【Linux】进程状态、优先级、切换和调度

操作系统的资源有限,我们的需求无限!在一对多的情况下要得到某种资源需要区分先后顺序。

2025-05-12 15:51:13 781

原创 【Linux】进程基本概念和进程PCB

操作系统对进程管理方法:先描述再组织,进程=PCB(内核数据结构)+代码和数据,具体Linux下的进程控制块叫:struct task_struct;进程排队本质是让PCB节点排队。

2025-04-10 18:58:46 835

原创 【Linux】进程预备知识——冯诺依曼、操作系统

操作系统是层状结构,和操作系统交互只能通过系统调用,本质是让用户安全的访问操作系统

2025-04-06 16:40:16 1536 2

原创 【Linux】命令和权限

Linux是多用户操作系统,超级管理员的命令提示符是“#”,普通用户的命令提示符是“$”。

2025-04-03 15:13:58 806

原创 【Linux】调试器——gdb使用

程序的发布形式有两种,debug和release模式,Linux gcc/g++出来的二进制程序默认是release模式。

2025-03-27 20:48:24 1069

原创 【C++】初始化列表、类型转换

初始化列表可以认为是每个成员变量定义初始化的地方。

2024-11-22 21:41:31 712

原创 【C++】拷贝构造 和 赋值运算符重载

拷⻉构造函数的参数只有⼀个且必须是类类型对象的引⽤,使⽤传值⽅式编译器直接报错,因为语法逻辑上会引发⽆穷递归调⽤。

2024-11-17 19:18:45 1506

原创 【C++】构造与析构函数

⽆参构造函数、全缺省构造函数、我们不写构造时编译器默认⽣成的构造函数,都叫做默认构造函数。

2024-11-16 15:58:24 812

原创 【C++】类与对象的基础概念

类就像一张图纸,你可以拿着这张图纸盖出多栋具体的房子。

2024-11-13 22:27:12 720

原创 【C++】基础语法概念

命名空间除了解决命名冲突问题外,也决定了数据的访问。

2024-11-11 11:36:37 1219

原创 二叉树及其顺序结构(堆)

树是一种非线性结构,它是由n(n>=0)个有限节点组成一个具有层次关系的集合。把它叫做树是因为它看起来像一颗倒挂着的数。

2024-11-04 16:27:49 950

原创 数据结构之顺序表

顺序表是用一段物理地址连续的存储单元依次存储数据元素的线性结构,一般情况下采用数组存储。

2024-10-31 09:22:30 1098

原创 自定义类型——结构体

结构体是一些不同类型值的集合,这些值称为成员变量。

2024-10-17 12:56:16 791

原创 C语言数据结构之算法复杂度

算法在编写成可执行程序后,运行时需要消耗时间资源和空间(内存)资源。因此衡量一个算法的好坏,一般是从时间和空间两个维度来衡量,既时间复杂度和空间复杂度。

2024-10-15 11:28:00 1046

原创 C语言内存函数

目录一、memcpy使用和模拟实现二、memmove使用和模拟实现三、memset函数的使用四、memcmp函数的使用正文开始。

2024-10-08 16:12:35 1699

原创 指针与strlen、sizeof的使用——深入理解指针(5)

(1)sizeof(数组名)表示整个数组,计算的是整个数组大小,单位字节;(2)&数组名 取出的是整个数组的地址,是地址!!!!(只要是地址,在不同的编译器下大小只有4/8个字节)

2024-10-06 05:45:31 915

原创 冒泡排序模拟实现qsort函数

qsort函数是用来实现各种数据排序,底层用到的是快速排序算法,它有四个参数,最后一个参数是函数指针变量,函数指针两个参数是void*,qsort返回值是void即不需要返回值

2024-10-03 13:06:13 851

原创 深入理解指针(4)——函数指针

函数指针的真正用途是实现回调函数,那么回调函数该如何实现呢?先看一下该函数语法介绍

2024-09-30 17:02:35 928

原创 浮点数在内存中的存储

常见的浮点数类型有:float、double、long double类型,浮点数的存储是根据国际标准IEEE(电⽓和电⼦⼯程协会)754进行存储

2024-09-22 17:54:24 819

原创 深入理解指针(3)——指针数组

⼀维数组传参,形参的部分可以写成数组的形式,也可以写成指针的形式。

2024-09-17 16:06:58 393

原创 深入理解指针(2)——指针运算

形参是实参的一份临时拷贝,更改形参并不会影响实参

2024-09-16 22:18:48 766

原创 深入理解指针(1)——指针基础概念

指针变量是用来存放地址的,存放在指针变量中的值理解为地址

2024-09-09 02:42:37 738

原创 判断一个数的二进制共有几个1

判断一个数的二进制共有几个1,无非就是把每个二进制位都拿出来看是不是1,是1计数器就+1

2024-09-03 11:44:50 474

原创 VS之调试那些事

承认问题的出现并寻找问题则为调试,英文名叫:debug(消灭bug)

2024-08-31 19:00:18 498

原创 扫雷游戏详解

此篇文章的目的是在VS控制台上通过9*9的棋盘实现模拟扫雷游戏。

2024-08-29 18:59:04 1346

原创 分支和循环(下)

玩家猜数字,猜数字的过程中,根据猜测数据的⼤⼩给出⼤了或⼩了的反馈,直到猜对,游戏结束。

2024-08-25 11:55:23 890

原创 分支和循环(上)

C语言是结构化的程序设计语言,这里的结构指的是顺序结果、分支(选择)结构、循环结构

2024-08-24 12:21:58 965

原创 结构体内存对齐

结构体的内存对齐是拿空间换取时间的做法。

2024-06-23 18:20:34 857

原创 strlen 的模拟实现

strlen是库函数,调用它时要引头文件string.h;strlen的用途是计算字符串中‘\0’之前的个数,只能是字符串。可以打开cplusplus查看它的使用,其中要提一下的是它的返回值类型是size_t等于无符号整型,因为长度默认没有负数所以用无符号整型;为了让代码比较健壮,经常看到代码中用const和assert关键字来修饰assert称为断言,能够帮助程序员在编写程序时判断指针是否为空,更快地发现问题并进行修复,需引头文件assert.h。

2024-06-16 18:06:08 324

空空如也

空空如也

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

TA关注的人

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